`
schy_hqh
  • 浏览: 543337 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论
文章列表
springMVC文件上传   增加上传组件依赖: In the case of the CommonsMultipartResolver, you need to use commons-fileupload.jar. apache-commons-io.jar apache-commons-fileupload.jar   <!-- fileupload --> <dependency> <groupId>commons-io</groupId> <artifactId>commons-i ...
springMVC基本原理       第一步:用户发出请求,如"http://localhost:8080/springmvc/user/reg?method=reg&name=zs"    第二步:服务器接收到请求,发现存在DispatcherServlet,则交给DispatcherServlet进行处理        DispatcherServlet内部通过检查HandlerMapping中是否存在对应的URL,如果有,则交给对应的Controller进行处理  /** List of HandlerMappings used by this ...

springMVC_01

 
  先了解历史,springMVC使用XML配置的方式      springMVC需要的部分依赖 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> &l ...
并发访问    可能引发的问题:更新丢失 (A线程把name属性改了,B线程马上改age属性,但是B线程中的name属性仍然是改之前的值,这就造成了A线程对name的更新丢失了)    ------------------------ 解决方案    *悲观锁 LockOptions.U ...
抓取策略:    什么是抓取策略? 即拥有了一个实体对象,想要得到它的关联对象的策略    什么是批量抓取策略? 即拥有了一批实体对象,想要得到这批实体对象的关联对象的策略---------------------------------------------------------------------------------在many-to-one/one-to-one上面(多的一端,如ContactPerson)定义抓取策略 1个对象---关联对象    单一对象--get()/load() ContactPerson    -fetch="select" ( ...
hibernate缓存策略---调整性能。主要目的:提高查询效率从内存中获取对象,不需要与数据库进行交互---提高查询性能缓存:    *一级缓存 session级别           只在session打开有效   生命周期:与session相关    *二级缓存 sessionFactory级别(全局缓存)    *查询缓存 sessionFactory级别(全局缓存)缓存的命中:通过什么key放到内存中,就通过什么key到内存中取        一级、二级缓存,缓存的是key是ID,缓存的value是实体对象查询缓存,缓存的key是HQL语句与参数,缓存的value:        ...
  HQL查询   package org.leadfar.hibernate.model; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Random; import junit.framework.TestCase; import ...
对方是实体类 用关联映射 one-to-many  many-to-one 等 对方不是一个实体类,比如String,Integer.Address(无id字段)等,用集合来存储---集合映射ListSetMap删除的时候,会自动删除对应的表中的所有数据(类似于级联删除)   =========================================================================== Set集合映射(不重复)   package org.leadfar.hibernate.model; import java.util.HashS ...
组合关系--体现整体与部分同存同亡--数据存储到一张表中,提交检索速度--数据都在一张表中,不存在延迟加载的问题,使用load或get都一样--一个类持有多个component,字段需取别名以示区分  package org.leadfar.hibernate.model; public class Person { private int id; private String name; private Address work; private Address home; Person() { } public Address ...
  多对多关联,都会引入第三张表 package org.leadfar.hibernate.model; import java.util.HashSet; import java.util.Set; public class Person { private int id; private String name; private Set<Role> roles; Person(){} //给人分配角色 public void addRole(Role role) { if(roles==null) { ...
一对一关联关系,当需要对2个对象进行独立对待时,分2个类来完成映射   主键关联映射,没有额外字段维护关联,id值保持一致 package org.leadfar.hibernate.model; public class Person { private long id; private String name; private IdCard idcard; Person(){} public long getId() { return id; } public IdCard getIdcard() { return id ...
使用Hibernate建立树形结构   递归查询子节点,会发出N多次select查询 可以在Node中定义一个字段,额外记录其与parent的id间的关系,如1|3|6|12 然后使用like进行模糊查询,只需要查询1次即可找出所有的child。 虽然模糊查询慢,但只发出1条语句,所以效率可能比发出N多次递归查询快!   实体类 package org.leadfar.hibernate.model; import java.util.Set; public class Node { private int id; private String name; ...
多对一双向关联   重要属性 inverse=true 作用: 强制在多的那端维护关联,避免在一的一端对集合操作出现问题,因为操纵集合维护关系有很多注意事项,一不留神就会出现问题! 设置inverse=true后,对集合进行操作,不会对 ...
单向一对多关联 一:group  Set存储contactPerson对象多:contactPerson   在一的一方维护关联关系 一端持有多方的引用,为一个集合,Set集合比较常用   单向一对多关联---lazy延迟策略set集合上可以定义的lazy属性:     -true 默认    -false     -extra --> 除非访问到对象属性,否则不会发出查询对象的具体属性的语句!              比如,求集合的size(),发出的查询语句时select count(*) 效率高!              比如,判断集合是否为空,isEmpty() ...
  多对一单向关联,只能从多的一端导航到一的一端   实体类 package org.leadfar.hibernate.model; public class ContactPerson { private int id; private String name; private Group group; public ContactPerson() { // TODO Auto-generated constructor stub } public ContactPerson(String name) { // TODO A ...
Global site tag (gtag.js) - Google Analytics