java
文章平均质量分 92
JavaMVC和spring的一些总结。
东方-教育技术博主
天下教技是一家,欢迎和我一起讨论学习~~b站同号同头像同名。
展开
-
httpsession详解(会话追踪原理)
会话跟踪:服务器端的技术:HttpSession对象: 1:原理:客户端浏览器第一次访问,服务器端创建一个会话对象。并且具有id的唯一值。 依赖cookie将sessionId的值发送给客户端。 第二次请求的时候,客户端浏览器携带sessionId到服务器。服务器端获得sessionId, 从而实现了会话跟踪: ...原创 2019-09-24 20:45:18 · 1632 阅读 · 2 评论 -
xstream&json使用详解
XStream:工具:1: 能够将javabean 序列化问xml 文件:2: 导入jar包:xstram-jar: 核心jar包:强依赖:xpp3-min.jar:xml的解析器:3: 使用步骤:获得对象:XStream xstream = new XStream();String xml = xstream.toXML(javaBean);4: 代码实现: 如何将javaBe...原创 2018-12-03 17:18:58 · 824 阅读 · 0 评论 -
xml模拟数据库案例(springIOC解耦)
properties解耦开发步骤:1 新建文件2 新建IO流读取配置文件(注意全路径名字里面必须有无参数的构造器)注意强转,处理异常为运行时异常 !!!注意静态块,在类加载的时候执行,因为刚开始的时候,用的是静态方法,只是加在到了内存中,并没有执行。(这是原来)代码如下:package com.yidongxueyuan.dao;imp...原创 2018-11-27 22:24:07 · 260 阅读 · 0 评论 -
项目实战:注册和登陆(含三层代码)
完整的框架如下:页面设计: 注册页面:<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><!DOCTY原创 2018-11-27 15:11:41 · 637 阅读 · 0 评论 -
PreparedStatement类详解以及案例
一:jdbc(1) 注册驱动(2)获得链接:(3)获得sql 容器: Statement :(4)执行sql 语句:(5)查询操作, 需要遍历结果集:(6)关闭资源:Statement: 存在的弊端, 可以被sql 注入:所以实际开发是不在地用的**PreparedStatement: 类:**作用:(1)带有预编译的功能:(2)效率高:(3)防止sql 注入:传统...原创 2018-12-04 20:13:01 · 4754 阅读 · 0 评论 -
ajax原理和基本操作
对应41天的学习笔记 ajax : 1: ajax是什么? Asynchronous Javascript And XML 翻译成中文就是“异步Javascript和XML 2: 异步和同步的交互: 同步: 特点: (1) 发出一个请求, 服务端端获得请求, 在对请求进行处理的过程...原创 2018-11-28 23:09:01 · 184 阅读 · 0 评论 -
表和表三种关系以及实战、
对应的学习天数是第33天开始,到时候再补上来。一:表:Hibernate:ORM: 关系表:-------> javaBean 记录:--------->对象:new Student(“lisi”,21); 字段:-------- >类当中的属性: 类和类的关系; (对象和对象之间的关系) 是一个:继承:...原创 2018-11-19 20:38:15 · 758 阅读 · 0 评论 -
初识MVC
MVCMVC: 不是java 不是特有的, 只是java 当中实现遵循了MVC 结构。java当中:M: model : 解决某一类的套路。 javaBeanv: view : jsp 充当视图c: Controller : Servlet 充当控制器:MVC 的优点:各个模块之间分工明确, 耦合度低, 利于系统的扩展。简述MVC :(1)MVC 出现的必要性:(2) ...原创 2018-11-16 15:56:39 · 151 阅读 · 0 评论 -
JSP流量监控脚本使用方法
百度不到JSP的流量监控脚本,自己写一个吧,1.0版本,后续更新会封装一下;功能:保存请求头和表单信息并打印使用方法:1 把web.xml配置为这个脚本的路径2 把全局变量设置为你要保存的txt文件路径效果:代码如下: import java.io.File;import java.io.BufferedWriter;import java.io.FileOut...原创 2018-11-15 01:21:40 · 335 阅读 · 0 评论 -
foreach循环遍历数组和集合&fmt格式化库
forEach标签:能够循环: 数组: list , map 集合:语法:<c:forEach items="" var="" varStatus=""><c:forEach>items:标签, ${存放在域对象当中的属性的名称}:例如数组或者集合var:每一个元素的名称:varStatus="": 带有循环状态的元素演示集合的遍历如下:原创 2018-11-16 00:54:12 · 5661 阅读 · 0 评论 -
EL详解&jstl标签
1 基本使用EL 不是jsp 研发的,而是第三方,但是在jsp 当中默认支持EL的。1: 作用: 取代在jsp 页面上嵌入代码的。 主要是用来向页面输出内容的;2: EL 语法:${ }3: EL : 在jsp 页面上默认支持,可以通过page 指令当中: isElIgnore=true;4: EL能够输出内容:常量:数值:数值运算后的结果:域对象当中的内容:5: EL表达...原创 2018-11-15 20:43:18 · 476 阅读 · 0 评论 -
pagecontext详解&JSP动作标签&Javabean设计
的PageContext对象: (1)作用:作为域对象使用(以后常用): 域对象:范围:当前的页面有效: 四个方法: 存: 取出: 移除: 获得所有的属性的名称:返回的是一个枚举: ( 2)能够代理其他的域对象:请求会话应用程序 //域对象存的方法: pageContext.setAttrib...原创 2018-11-13 21:11:04 · 526 阅读 · 0 评论 -
jsp的指令(用于&包含&错误处理)和内置对象
一: jsp: html+ java代码+ jsp 的动作标签: jsp的三大指令: (1)page指令: <%@page %> language="java" import="java.util.*" 和 java 代码当中的import 关键字一致: 导入包的。 注意:(1)同...原创 2018-11-05 21:32:37 · 346 阅读 · 0 评论 -
JSP页面验证码代码
验证码:作用:防止服务器被攻击原理:awt swing 图形化界面注意:刷新之后验证码不刷新的问题是因为浏览器缓存,在后面追加参数即可解决,一般追加当前时间戳作为参数。import java.awt.Color;import java.awt.Font;import java.awt.Graphics2D;import java.awt.image.BufferedIm...原创 2018-11-02 17:54:00 · 1404 阅读 · 2 评论 -
session和浏览器以及sessionAPI
HttpSession 和 客户端浏览器: session与浏览器session保存在服务器,而sessionId通过Cookie发送给客户端,但这个Cookie的生命是-1,即只在浏览器内存中存在,也就是说如果用户关闭了浏览器,那么这个Cookie就丢失了。当用户再次打开浏览器访问服务器时,就不会有sessionId发送给服务器,那么服务器会认为你没有session,所以服务器会创建...原创 2018-11-02 16:21:33 · 1088 阅读 · 0 评论 -
httpsession详解
会话跟踪:服务器端的技术:HttpSession对象: 1:原理:客户端浏览器第一次访问,服务器端创建一个会话对象。 并且具有id的唯一值。 依赖cookie将sessionId的值发送给客户端。 第二次请求的时候,客户端浏览器携带sessionId到服务器。服务器端获得sessionId, 从而实现了会话...原创 2018-11-02 00:00:34 · 3671 阅读 · 0 评论 -
hibernate的一级缓存
Hibernate的一级缓存:介绍:Hibernate向一级缓存放入数据的时候, 同时复制一份数据存放在Hibernate的快照当中, 当使用commit的方法进行提交事务的时候, 会清理session的以及缓存。 这时会使用OID判断一级缓存中的对象和快照中的对象是否一致,如果两个对象当中的属性发生变化, 则执行update语句, 将缓存当中的数据同步到数据库当中。 并且更新快照: 如果一致...原创 2018-12-13 17:53:57 · 220 阅读 · 0 评论 -
hibernate简单介绍
一: 框架:集合框架:DBUtils: 轻量级的框架, 对JDBC 的封装:1: 框架:定义:项目的半成品,很多通用型的, 重复型的操作, 封装完成, 直接使用。2: 作用: 提高开发效率的二: EE 的三层架构:ibaties是原来的mybatismvc三层重命名的话,又可以叫做:表现层,业务层,持久化层:三: Hibernate:1: 什么是Hibernate:...原创 2018-12-09 22:30:16 · 266 阅读 · 0 评论 -
redis操作和常见问题
安装:https://download.csdn.net/upload/11574944操作:https://download.csdn.net/upload/11574946原创 2019-08-17 21:46:41 · 256 阅读 · 0 评论 -
java文件的上传和下载(细节问题)
一: 文件的上传:要求:1:jsp的页面: a: form 表单: b: post 提交: c: form指定一个属性: enctype="multipart/form-data" d: file组件:2: Servlet: request.getParamter("name");//不生效了: ServletInputStre...原创 2019-03-20 22:31:55 · 473 阅读 · 0 评论 -
DBUtils框架QueryRunner的 使用
DBUtils 使用:开发步骤(1)copy jar包:(2)核心类: QueryRunner类:(3)使用核心类完成读写,以及批量操作:写:删除,更新:添加: 调用同一个方法: update()package com.yidongxueyuan.test;import java.io.File;import java.io.FileInputStream;import ...原创 2019-03-20 22:25:44 · 934 阅读 · 0 评论 -
java开发小窍门
1 各种实用工具https://tool.lu/2 用MyEclipse自动生成hibernate映射文件和实体类https://www.cnblogs.com/klslb/p/6908447.html原创 2018-12-18 16:46:16 · 196 阅读 · 0 评论 -
hibernate查询方式
Hibernate的查询方式:OID 检索:get方法: load方法:Customer cust = session.get(Customer.class,1L);Customer cust = session.load(Customer.class,1L);对象的导航检索: Customer cust = session.get(Customer.class,1L); List...原创 2018-12-17 22:54:52 · 165 阅读 · 0 评论 -
hibernate持久化类以及相互转化
持久化类的三种状态持久化类:定义: 持久化类: javaBean + 和底层数据库表创建了映射关系:特点:(1)无参数构造器: 底层通过反射, 创建实体bean(2)提供属性, 属性提供get set方法:(3)必须Serializable接口:(4)实体类当中必须同一个OID :总结: java 当中通过地址值:数据库:主键:Hibernate: OID(5) 不能使用fi...原创 2018-12-11 19:38:28 · 228 阅读 · 0 评论 -
hibernate主键生成策略
持久化类的概述什么是持久化类持久化:将内存中的一个对象持久化到数据库中的过程。 Hibernate框架就是用来进行持久化的框架持久化的类:一个java对象与数据库的表建立了映射关系, 那么这个类在Hibernate中就称之为持久化类。持久化类 = java 类+ 映射文件持久化类的编写规则:对持久化类提供一个无参数的构造器。 Hibernate当中底...原创 2018-12-11 19:05:46 · 195 阅读 · 0 评论 -
session对象详解
SessionSession接口负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句)。但需要注意的是Session对象是非线程安全的。同时,Hibernate的session不同于JSP应用中的HttpSession。这里当使用session这个术语时,其实指的是Hibernate中的session,而以后会将HttpSession对象称为用户s...原创 2018-12-11 16:59:14 · 904 阅读 · 0 评论 -
多对多的映射关系和级联
开发步骤:创建表 用户表CREATE TABLE sys_user (user_id bigint(32) NOT NULL AUTO_INCREMENT COMMENT ‘用户id’,user_code varchar(32) NOT NULL COMMENT ‘用户账号’,user_name varchar(64) NOT NULL COMMENT ‘用户名称’,user_pa...原创 2018-12-16 21:53:35 · 475 阅读 · 0 评论 -
一对多表的关系区分 cascade 和 inverse 属性
区分 cascade 和 inverse 属性:一的一方设置:cascade=“save-update”;inverse=“true”;session.save(cus);结果:cus: 能够被保存:LinkedMan: 能够被保存: 为什么, ? 设置了 一方的级联操作: 操作一的一方, 多的一方也被级联操作:LinkedMan: 的外键并没有插入, NULL : 为什么...原创 2018-12-16 21:42:57 · 171 阅读 · 0 评论 -
hibernate产生多余的sql语句
看不懂的话看sql语句:也是倒是也好理解,两个表更新的都是 linkedman (联系人这个值)原因是因为设置了双向关联。解决产生多余的sql :方式一: 设置单项关联: 能够解决问题: 只设置一方去维护外键关系: 但是该方式在实际的开发当中不采用。原因: 更加复杂的业务的逻辑, 设置了单项关联, 某些情况不能满足实际的业务需求。方式二: 使一方放弃外键的 维护权利:使一的一方...原创 2018-12-16 20:59:27 · 506 阅读 · 0 评论 -
hibernate的接口以及表和表之间的关系
Criteria 接口:QBC 查询: QUery By Criteria 根据条件查询, 更加的面向对象:1:开发步骤:a: 获得一个Criteria 对象:b: Criteria.add(“条件”).add("").add("");条件: 单独的封装成了一个对象:Criterionc:获得条件:Restrictions;对象, 提供了一系列的方法, 可以获得Criterion...原创 2018-12-15 20:29:55 · 274 阅读 · 0 评论 -
hibernate抓取策略(关联级别的延迟加载)
1.3Hibernate的抓取策略(优化)延迟加载的概述通过一个对象抓取到关联对象需要发送SQL语句,SQL语句如何发送,发送成什么样格式通过策略进行配置。通过或者在上通过fetch属性进行设置fetch和这些标签上的lazy如何设置优化发送的SQL语句1.3.1.1什么是延迟加载延迟加载:lazy(懒加载)。执行到该行代码的时候,不会发送语句去进行查询,在真正使用这个对象的属性的...原创 2018-12-20 20:38:50 · 400 阅读 · 0 评论 -
\hibernate核心配置和映射文件
核心的配置文件:1: 文件命名:src: 类路径(**一定要遵循命名规范)文件的名称固定: hibernate.cfg.xml2:核心:xml声明部分: 引入了一个dtd文件:配置的内容: 必须参数: 连接数据的四大参数: driver_class url username password dialect : 方言: 可选参数:show_sql : ...原创 2018-12-09 23:06:43 · 189 阅读 · 0 评论 -
JSP基础
jsp基础: 1:jsp:java服务器页面 2:作用:主要用来生成页面。解放了servlet生成页面的功能: 3:组成:html + java代码+动作标签: 4:jsp当中嵌入java代码: 形式: <%%> java语句: <%=%>表达式,用来向浏览器输出内容: <%!%...原创 2018-10-31 22:06:59 · 146 阅读 · 0 评论 -
uri编码原理简述
import java.io.UnsupportedEncodingException; import java.util.Arrays;public class Test { public static void main(String [] args)throws UnsupportedEncodingException { // String s...原创 2018-10-31 21:44:59 · 479 阅读 · 0 评论 -
java中路径总结&servletpost和get乱码解决
路径:一般包括: 超链接: form表单: 重定向: 转发: 包含: ServletContext对象获得资源: url-pattern路径: 上面的路径主要分为两大类: a:客户端路径: 超链接: form表单: 重定向: 相对路径:/:相对于当前的 主机...原创 2018-10-31 21:40:50 · 210 阅读 · 0 评论 -
Java对象的序列化和反序列化
知识点补充:序列化: 将对象的信息以二进制的形式永久的保存在外部的介质当中。 这个过程就称之为对象的序列化。 序列化: ObjectOutputStream 对象的反序列化: 将外部介质当中的对象信息读取到内存当中,这一个过程就称之为对象的反序列化。 反序列化: ObjectInputStream : 1:序列化 ObjectOu...原创 2018-08-02 22:35:35 · 126 阅读 · 0 评论 -
java 匿名内部类(接口 和抽象方法)与Lambda表达式
开始时间 2018年8月11日15:20:53结束时间 2018年8月11日18:57:03累计时间 3小时前面已经写过匿名内部类的一篇主要介绍 接口和抽象方法实现,所以此处简写。二者差异参数不同:如果通过接口创建匿名内部类,不能显式创建构造器,因此匿名内部类只有一个隐式的无参构造器,new()括号里不能有参数如果是用过继承父类来创建匿名内部类,该类将有和父类形参列表相...原创 2018-08-11 18:53:49 · 2317 阅读 · 1 评论 -
java反射基础
开始时间:2018年8月15日08:58:57 | 2018年8月15日17:02:11| 2018年8月15日22:19:35结束时间:2018年8月15日12:08:07 | 2018年8月15日18:02:19| 2018年8月15日23:29:27累计时间:5小时 知乎推荐 https://www.zhihu.com/question/24304289/answer/147...原创 2018-08-14 21:11:32 · 139 阅读 · 0 评论 -
java枚举类的定义和使用
开始时间 2018年8月11日11:04:35 结束时间 2018年8月11日12:30:37 累计+1小时枚举类的对象是有限个对象个数 一个可以看做单例模式的实现 多个 为枚举类1 如何定义 cccccccc 1 私有化类的构造器。 2 成员变量如果声明为final。要在构造器中初始化,不允许被修改、3 通过公共方法 调用属性...原创 2018-08-11 12:28:24 · 51707 阅读 · 13 评论 -
java IO流以外的其他文件流总结
开始时间 2018年8月10日20:49:01结束时间 2018年8月10日21:53:42知识点补充:一:IO SequenceInputStream: 序列流: 作用: 实现文件的合并。 实现了文件的切割。 序列化流: 将对象的信息以二进制的形式保存在外部的文件当中。 .obj ObjectOutputStream: writerObject(Objec...原创 2018-08-10 12:10:50 · 497 阅读 · 0 评论