12 2016 档案

摘要:表单校验是几乎所有WEB应用都会用到的,这里提供一种用原生JavaScript的简单前台校验 阅读全文
posted @ 2016-12-29 15:36 凌晨。。。三点 阅读(2932) 评论(1) 推荐(0) 编辑
摘要:全部jar包 目录结构 配置案例 package cn.yzu.Tbook.action; import javax.annotation.Resource; import org.apache.struts2.convention.annotation.Action; import org.apa 阅读全文
posted @ 2016-12-22 20:59 凌晨。。。三点 阅读(484) 评论(0) 推荐(0) 编辑
摘要:Struts2+Spring+Hibernate导包 Struts2导入jar包 struts2/apps/struts2-blank.war/WEB-INF/lib/*.jar 导入与spring整合的jar struts2/lib/struts2-spring-plugin-2.3.15.3.j 阅读全文
posted @ 2016-12-22 15:34 凌晨。。。三点 阅读(461) 评论(0) 推荐(1) 编辑
摘要:事务 事务:是逻辑上一组操作,要么全都成功,要么全都失败. 事务特性(ACID) 原子性:事务不可分割 一致性:事务执行的前后,数据完整性保持一致 隔离性:一个事务执行的时候,不应该受到其他事务的打扰 持久性:一旦结束,数据就永久的保存到数据库 如果不考虑隔离性 脏读:一个事务读到另一个事务未提交数 阅读全文
posted @ 2016-12-21 23:08 凌晨。。。三点 阅读(210) 评论(0) 推荐(0) 编辑
摘要:Spring对持久层技术支持 JDBC : org.springframework.jdbc.core.JdbcTemplate Hibernate3.0 : org.springframework.orm.hibernate3.HibernateTemplate IBatis(MyBatis) : 阅读全文
posted @ 2016-12-21 16:15 凌晨。。。三点 阅读(583) 评论(0) 推荐(0) 编辑
摘要:什么是AOP AOP Aspect Oriented Programing 面向切面编程 AOP采取横向抽取机制,取代了传统纵向继承体系重复性代码(性能监视、事务管理、安全检查、缓存) Spring AOP使用纯Java实现,不需要专门的编译过程和类加载器,在运行期通过代理方式向目标类织入增强代码 阅读全文
posted @ 2016-12-20 23:51 凌晨。。。三点 阅读(3762) 评论(0) 推荐(1) 编辑
摘要:1.程序中有Junit环境2.导入一个jar包.spring与junit整合jar包 spring-test-3.2.0.RELEASE.jar3.测试代码 阅读全文
posted @ 2016-12-20 15:52 凌晨。。。三点 阅读(180) 评论(0) 推荐(0) 编辑
摘要:正常整合Servlet和Spring没有问题的 但是每次执行Servlet的时候都要加载Spring配置,加载Spring环境,极大地降低效率!!! 解决办法 1:在Servlet的init方法中加载Spring配置文件?(不好) 当前这个Servlet可以使用,但是其他的Servlet用不了了!! 阅读全文
posted @ 2016-12-20 15:37 凌晨。。。三点 阅读(426) 评论(0) 推荐(0) 编辑
摘要:Spring的注解装配Bean Spring2.5 引入使用注解去定义Bean @Component 描述Spring框架中Bean Spring的框架中提供了与@Component注解等效的三个注解 @Repository 用于对DAO实现类进行标注 @Service 用于对Service实现类进 阅读全文
posted @ 2016-12-20 14:53 凌晨。。。三点 阅读(346) 评论(0) 推荐(0) 编辑
摘要:Spring框架Bean实例化的方式 提供了三种方式实例化Bean 构造方法实例化(默认无参数,用的最多) 静态工厂实例化 实例工厂实例化 无参数构造方法的实例化 静态工厂实例化 实例工厂实例化 Bean的其他配置 id和name的区别 id遵守XML约束的id的约束.id约束保证这个属性的值是唯一 阅读全文
posted @ 2016-12-19 22:44 凌晨。。。三点 阅读(207) 评论(0) 推荐(0) 编辑
摘要:什么是Spring Spring是分层的JavaSE/EE full-stack(一站式) 轻量级开源框架 分层 SUN提供的EE的三层结构:web层、业务层、数据访问层(持久层/集成层) Struts2是web层基于MVC设计模式框架 Hibernate是持久层的一个ORM的框架 一站式 Spri 阅读全文
posted @ 2016-12-19 19:04 凌晨。。。三点 阅读(401) 评论(0) 推荐(0) 编辑
摘要:什么是缓存? 缓存是介于物理数据源与应用程序之间,是对数据库中的数据复制一份临时放在内存中的容器,其作用是为了减少应用程序对物理数据源访问的次数,从而提高了应用程序的运行性能。Hibernate在进行读取数据的时候,根据缓存机制在相应的缓存中查询,如果在缓存中找到了需要的数据(我们把这称做“缓存命  阅读全文
posted @ 2016-12-18 20:50 凌晨。。。三点 阅读(204) 评论(0) 推荐(0) 编辑
摘要:事务:事务就是逻辑上的一组操作,要么全都成功,要么全都失败!!! 事务特性 原子性:事务一组操作不可分割. 一致性:事务的执行前后,数据完整性要保持一致. 隔离性:一个事务在执行的过程中不应该受到其他事务的干扰. 持久性:一旦事务结束,数据就永久保存数据库. 如果不考虑事务的隔离性引发一些安全性问题 阅读全文
posted @ 2016-12-18 14:19 凌晨。。。三点 阅读(507) 评论(0) 推荐(0) 编辑
摘要:立即检索:当执行某行代码的时候,马上发出SQL语句进行查询(get())延迟检索:当执行某行代码的时候,不会马上发出SQL语句进行查询.当真正使用这个对象的时候才会发送SQL语句(load()) 类级别检索和关联级别检索 类级别的检索:<class>标签上配置lazy 关联级别的检索:<set>/< 阅读全文
posted @ 2016-12-17 23:48 凌晨。。。三点 阅读(908) 评论(0) 推荐(0) 编辑
摘要:Hibernate的检索方式 检索方式(查询的方式) 导航对象图检索方式: 根据已经加载的对象导航到其他对象 Customer customer = (Customer)session.get(Customer.class,1); customer.getOrders();// 获得到客户的订单 O 阅读全文
posted @ 2016-12-17 16:54 凌晨。。。三点 阅读(389) 评论(0) 推荐(0) 编辑
摘要:实体之间的关系 实体之间有三种关系 一对多:一个用户,生成多个订单,每一个订单只能属于一个用户 建表原则:在多的一方创建一个字段,作为外键,指向一的一方的主键 多对多:一个学生可以选择多门课程,一个课程可以被多个学生选择 建表原则:创建第三张表,中间表至少有两个字段,分别作为外键指向多对多双方主键 阅读全文
posted @ 2016-12-16 15:06 凌晨。。。三点 阅读(435) 评论(0) 推荐(0) 编辑
摘要:Hibernate的一级缓存 什么是缓存:缓存将数据库/硬盘上文件中数据,放入到缓存中(就是内存中一块空间).当再次使用的使用,可以直接从内存中获取 缓存的好处:提升程序运行的效率.缓存技术是Hibernate的一个优化的手段 Hibernate分成两个基本的缓存: 一级缓存:Session级别的缓 阅读全文
posted @ 2016-12-13 19:26 凌晨。。。三点 阅读(269) 评论(0) 推荐(0) 编辑
摘要:Hibernate的持久化类状态 持久化类:就是一个实体类 与 数据库表建立了映射. Hibernate为了方便管理持久化类,将持久化类分成了三种状态. 瞬时态 transient (临时态):持久化对象没有唯一标识OID.没有纳入Session的管理 持久态 persistent :持久化对象有唯 阅读全文
posted @ 2016-12-13 13:46 凌晨。。。三点 阅读(214) 评论(0) 推荐(0) 编辑
摘要:Configuration:负责管理Hibernate的配置信息 1.加载核心配置文件 核心配置有两种: hibernate.properties 加载:Configuration configuration = new Configuration(); hibernate.cfg.xml: 加载: 阅读全文
posted @ 2016-12-13 00:40 凌晨。。。三点 阅读(1239) 评论(0) 推荐(1) 编辑
摘要:核心配置 核心配置有两种方式进行配置 1:属性文件的配置:hibernate.properties 格式:key=value hibernate.connection.driver_class=com.mysql.jdbc.Driver 注意:没有办法在核心配置文件中加载映射文件.(必须手动编码的方 阅读全文
posted @ 2016-12-12 21:15 凌晨。。。三点 阅读(786) 评论(0) 推荐(0) 编辑
摘要:保存记录 根据主键进行查询 ***** get 和load的区别:(面试题) 1.发送SQL的时机: load这个方法采用了一个技术.lazy延迟加载(懒加载).真正使用这个对象的数据的时候.(对象的数据不包括主键) get这个方法是立即检索.当执行session.get()方法的时候,马上发送SQ 阅读全文
posted @ 2016-12-12 19:04 凌晨。。。三点 阅读(290) 评论(0) 推荐(0) 编辑
摘要:第一步:下载Hibernate的开发包: http://sourceforge.net/projects/hibernate/files/hibernate3 第二步:Hibernate框架目录结构: documentation :Hibernate文档 lib :Hibernate开发jar包 b 阅读全文
posted @ 2016-12-12 18:49 凌晨。。。三点 阅读(273) 评论(0) 推荐(0) 编辑
摘要:配置注意点: 在原有Struts2框架jar包的引入下,需要额外多加一个Json的插件包(struts2-json-plugin-2.3.7.jar) 在struts.xml配置文件中,包需要继承json-default,然后把result的类型改为json 一、先来个简单示例,利用Struts2+ 阅读全文
posted @ 2016-12-11 19:01 凌晨。。。三点 阅读(1524) 评论(0) 推荐(0) 编辑
摘要:用户重复提交表单在某些场合将会造成非常严重的后果。例如,在使用信用卡进行在线支付的时候,如果服务器的响应速度太慢,用户有可能会多次点击提交按钮,而这可能导致那张信用卡上的金额被消费了多次。因此,重复提交表单会对你的系统带来逻辑影响,必须采取一些措施防止这类情况的发生。 用户重复提交同一个HTML表单 阅读全文
posted @ 2016-12-11 16:55 凌晨。。。三点 阅读(1113) 评论(0) 推荐(0) 编辑
摘要:另外值得参考博客:http://blog.csdn.net/resigshy/article/details/7560573 OGNL是Object Graphic Navigation Language(对象图导航语言)的缩写,它是一个开源项目。Struts2框架使用OGNL作为默认的表达式语言, 阅读全文
posted @ 2016-12-11 15:50 凌晨。。。三点 阅读(956) 评论(1) 推荐(0) 编辑
摘要:Struts2文件上传 Struts2提供 FileUpload拦截器,用于解析 multipart/form-data 编码格式请求,解析上传文件的内容,fileUpload拦截器 默认在defaultStack栈中, 默认会执行的 页面:<input type="file" name="uplo 阅读全文
posted @ 2016-12-09 13:45 凌晨。。。三点 阅读(542) 评论(0) 推荐(0) 编辑
摘要:Struts2 拦截器 Struts2 拦截器在访问某个 Action 方法之前或之后实施拦截, Struts2 拦截器是可插拔的, 拦截器是 AOP 的一种实现. 拦截器栈(Interceptor Stack): 将拦截器按一定的顺序联结成一条链. 在访问被拦截的方法时, Struts2拦截器链中 阅读全文
posted @ 2016-12-09 00:48 凌晨。。。三点 阅读(341) 评论(0) 推荐(0) 编辑
摘要:原文章:http://www.cnblogs.com/hellokitty1/p/5083663.html 简单理解 国际化简称i18n,其来源是英文单词 internationalization的首末字符i 和n。18为中间的字符数。 随着全球经济的一体化,软件开发者应该开发出支持多国语言、国际化 阅读全文
posted @ 2016-12-08 20:11 凌晨。。。三点 阅读(211) 评论(0) 推荐(0) 编辑
摘要:从struts2.1开始,struts2 引入了Convention插件来支持零配置,使用约定无需struts.xml或者Annotation配置 需要 如下四个JAR包 插件会自动搜索如下类 action、actions、struts、struts2包下所有Java类 所有实现了com.opens 阅读全文
posted @ 2016-12-07 23:44 凌晨。。。三点 阅读(381) 评论(0) 推荐(0) 编辑
摘要:校验的分类 客户端数据校验 和 服务器端数据校验 客户端数据校验 ,通过JavaScript 完成校验 (改善用户体验,使用户减少出错 ) 服务器数据校验 ,通过Java代码 完成校验 struts2 支持校验方式 代码校验(用的很少) :在服务器端通过编写java代码,完成数据校验 配置校验(主流 阅读全文
posted @ 2016-12-07 22:54 凌晨。。。三点 阅读(437) 评论(0) 推荐(0) 编辑
摘要:Struts2类型转换(了解) struts2 内部提供大量类型转换器,用来完成数据类型转换问题 boolean 和 Boolean char和 Character int 和 Integer long 和 Long float 和 Float double 和 Double Date 可以接收 y 阅读全文
posted @ 2016-12-07 11:21 凌晨。。。三点 阅读(206) 评论(0) 推荐(0) 编辑
摘要:第一种 :Action 本身作为model对象,通过成员setter封装 (属性驱动 ) 问题: Action封装数据,会不会有线程问题 ? struts2 Action 是多实例 ,为了在Action封装数据 (struts1 Action 是单例的 ) 缺点:需要单独定义javaBean,将ac 阅读全文
posted @ 2016-12-06 22:46 凌晨。。。三点 阅读(956) 评论(0) 推荐(0) 编辑
摘要:Struts2配置文件加载顺序 struts2 配置文件由核心控制器加载 StrutsPrepareAndExecuteFilter (预处理,执行过滤) default.properties 该文件保存在 struts2-core-2.3.7.jar 中 org.apache.struts2包里面 阅读全文
posted @ 2016-12-06 18:48 凌晨。。。三点 阅读(789) 评论(0) 推荐(0) 编辑