
java-web
java-web
A__17
这个作者很懒,什么都没留下…
展开
-
spring容器创建对象的时机
spring容器创建对象的时机 1,在单例的情况下: 1.1 在默认的情况下,启动spring容器时创建对象 1.2 在spring的配置文件bean中有一个属性lazy-init="default/true/false" 1)如果lazy-init为"default/false"在启动spring容器时创建对象 优点:可以在启动spring容器的时候,检查spring容器原创 2015-09-23 16:07:08 · 1247 阅读 · 0 评论 -
Spring中的数据库操作--使用JdbcTemplate
Spring中的数据库操作 静态代码+动态变量 = jdbc编程 静态代码构成了模板,而动态变量则是需要传入的参数 JdbcTemplate 1)简化了我们对JDBC的操作:完成了SQL语句的创建和执行、资源的创建和释放的工作 总结:节省代码,不管连接、不管事务、不管异常、不管关闭 2)仅需要传递DataSource就可以把它实例化 3)JdbcTemplate只需要创原创 2015-09-23 16:14:01 · 2075 阅读 · 1 评论 -
Struts2中的OGNL表达式
Struts2中的OGNL: 1,$、#、%的区别 a)${ognl}在struts.xml中使用 b)#取得ActionContext的值 c)%将原本的文本属性解析为ognl,对于本来就是ognl的属性不起作用。在jsp中:%{ognl}只能写到struts2的自定义标签的属性中 2,语法 user 相当于 findValue("user") #user 相当于 ma原创 2015-09-24 14:05:39 · 682 阅读 · 0 评论 -
在Struts2访问 HttpServletRequest、HttpSession、ServletContext三个域对象
Struts2如何访问 HttpServletRequest、HttpSession、ServletContext三个域对象 1,方法一:与Servlet API解耦的访问方式 通过 ActionContext 访问域对象对应的 Map 对象 public class MyAction extends ActionSupport implements Serializable {原创 2015-09-24 14:03:26 · 3321 阅读 · 0 评论 -
Ajax
一、Ajax(Asynchronous JavaScript and XML)的工作原理1)AJAX采用异步交互过程。AJAX在用户与服务器之间引入一个中间媒介,从而消除了网络交互过程中的处理—等待—处理—等待缺点。2)用户的浏览器在执行任务时即装载了AJAX引擎。AJAX引擎用JavaScript语言编写,通常藏在一个隐藏的框架中。它负责编译用户界面及与服务器之间的交互。3)AJAX引擎允许用户与应用软件之间的交互过程异步进行,独立于用户与网络服务器间的交流。现在,可以用Javascript调用AJ原创 2015-01-20 17:21:09 · 771 阅读 · 0 评论 -
代理模式--静态代理VS动态代理
代理模式: 作用:为目标对象提供一个代理对象以控制对目标对象的访问。 说明:代理对象存在的价值:主要用于拦截对真实业务对象(目标对象)的访问 应用:拦截器等静态代理: 代理类和目标类必须实现相同的接口或者是继承相同父类。 静态代理模式的缺点: 1,如果一个系统中有100个目标(被代理)对象,则要创建100个代理对象 2,如果一个目标对象中有很多方法需要事务,则代理对象的很多方...原创 2015-09-24 14:48:15 · 826 阅读 · 0 评论 -
Clob类型与String类型的相互转换
// Clob类型转换成String类型 public String ClobToString(final Clob clob) { if (clob == null) { return null; } Reader is = null; try { is = clob.getCharacterStream(); } catch (Exception原创 2016-09-05 23:13:16 · 23022 阅读 · 0 评论 -
JSP
一、JSP的指令:给JSP引擎用的(服务器用的) 基本的语法格式: 作用:告诉服务器,该如何处理JSP中除了指令之外的内容的。 1)page 作用:定义JSP页面的各种属性 属性: language:指示JSP页面中使用脚本语言。默认值java,目前只支持java。 extends:指示JSP对应的Servlet类的父类。不要修改。 *import:导入J原创 2015-03-01 21:01:52 · 1065 阅读 · 0 评论 -
EL、JSTL
一、EL表达式 它只是JSP中的表达式,不是一种开发语言。 基本语法:${EL表达式} 1、获取数据 EL表达式获取的对象如果是null,页面不会显示数据。因此,EL表达式中永远不会出现空指针异常 p.name:调用域中名称为p对象的getName方法,点运算符是用于获取属性的取值的。 .运算符: []运算符:.运算符能做的,[]也能做。[]能做的,.不一定能做。原创 2015-03-01 20:51:13 · 756 阅读 · 0 评论 -
Filter
过滤器 (Filter) 1、概述:过滤器概述过滤器就像一个保安,可以对请求和响应进行拦截。 2、编写过滤的步骤: 1)编写一个类,实现javax.servlet.Filter接口,这样的类一般称之为过滤器类 public class FilterDemo1 implements Filter { public void init(FilterConfig filterCo原创 2015-03-18 18:52:25 · 821 阅读 · 0 评论 -
XML
一、概述二、基本语法三、XML的约束四、DTD的基本语法五、XML解析方式六、Schema约束原创 2015-04-06 18:58:26 · 1185 阅读 · 0 评论 -
HTTP协议
HTTP协议1.1协议的作用及版本1.1.1HTTP是Hyper Text Transfer Protocol(超文本--html传输协议)。1.1.2HTTP协议的作用用户描述客户端与服务器间的数据传递的。1.1.3:Http协议的版本:1.0:特点:每次请求服务器上的资源都要建立新的连接,响应完毕后都会关闭连接。是无状态的协议。1.1:特点:在一次TCP/IP连接的基础上可...原创 2014-12-31 15:34:47 · 868 阅读 · 0 评论 -
SpringMVC的工作原理
SpringMVC的工作原理: 1)客户端向服务器发出一个http请求,web服务器对请求进行解析,如果在DispatcherServlet的请求映射路径(在web.xml中配置)中匹配到了该请求,那么web服务器就会把该请求转发给DispatcherServlet进行处理。 2)DipatcherServlet接收到这个请求后,将根据请求的信息(URL、请求方式、请求参数等)和HandlerMapping的配置找到处理请求的控制器。 3)控制器对数据处理完成后,将返回一个ModelAndView对象原创 2016-12-22 02:01:20 · 621 阅读 · 0 评论 -
Servlet
一、Servlet的生命周期 容器最终要调用service方法为客户进行服务 1、Servlet接口中的常用方法: public void init(ServletConfig config):初始化。Servlet类被实例化后就执行,且执行一次。由容器进行调用 public void destroy():销毁Servlet对象。由容器进行调用 2、Servlet实例对象和初始化方法原创 2015-03-01 20:25:16 · 999 阅读 · 0 评论 -
Spring中的AOP
aop: 原理:通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能。 概念: 1,切面(Aspect) 事务、日志、权限等都是切面,切面是类 2,通知(Advice) 切面中的方法就是通知,通知是方法 1)前置通知:在目标方法执行之前执行。无论目标方法是否抛出异常,都执行,因为在执行前置通知的时候,目标方法还没有执行,还没有遇原创 2015-09-23 16:34:13 · 782 阅读 · 0 评论 -
RESTful Web Services -- JAX-RS中的注解
RESTful Web Services -- JAX-RS中的注解1)javax.ws.rs包下的注解: javax.ws.rs.GET、javax.ws.rs.Post、javax.ws.rs.Consumes、javax.ws.rs.Produces、javax.ws.rs.Path @GET 表示(被@GET注解修饰的)方法将处理(响应)来自HTTP的GET请求 @POS原创 2017-06-20 23:26:52 · 4597 阅读 · 0 评论 -
Hibernate对象的3种状态
Hibernate对象的3种状态: 1,临时状态(Transient): 与数据库没有对应,跟Session没有关联。 一般是新new出的对象。 2,持久化状态(Persistent): 对象在Session的管理之中,最终会有对应的数据库记录。 特点:有ID,并且对对象的修改会同步到数据库。 3,游离状态(Detached,又叫脱管状态): 数据库中有对应记录,但对象原创 2015-09-23 15:36:44 · 1480 阅读 · 0 评论 -
Hibernate的3种继承映射策略
Hibernate的3种继承映射策略: 注意:映射文件名为:父类名.hbm.xml 1,父类和子类使用同一张表:采用 subclass 元素的继承映射 1)因为父类和子类的实例全部保存在同一个表中,因此需要在该表内增加一列,使用该列来区分每行记录到底是哪个类的实例----这个列被称为鉴定者列(discriminator) 2)使用 subclass 来映射子类,使用 class原创 2015-09-23 15:54:31 · 834 阅读 · 0 评论 -
HttpSession状态的转换
HttpSession状态的转换:新建状态、运行状态、持久化状态、销毁状态原创 2015-05-27 21:16:50 · 1789 阅读 · 0 评论 -
Cookie小案例
Cookie小案例: 1记住用户最后一次的访问时间 2记住用户登录时的用户名// 1利用Cookie技术,记住用户上次访问的时间public class ShowLastAccessTimeServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest request, HttpS原创 2015-05-28 20:41:13 · 1038 阅读 · 0 评论 -
MD5加密及BASE64编码
MD5即Message-Digest Algorithm 5(信息-摘要算法5):方法一: 添加jar包:${SPRING_HOME}/lib/jakarta-commons/commons-codec.jar import org.apache.commons.codec.digest.DigestUtils; public class MD5Util { // 返回md5加原创 2015-05-29 13:20:44 · 3204 阅读 · 0 评论 -
客户端禁用Cookie后session失效的问题
解决方法:使用URL重写技术 URL重写:在原来的URL后面加上";jsessionid=123456789" 即:url--->url;JSESSIONID=123 注意: *For robust session tracking, all URLs emitted by a servlet should be run through this method. Otherwise, URL rewriting cannot be used with browsers which do n原创 2015-05-22 16:32:06 · 1533 阅读 · 0 评论 -
session案例:防止表单重复提交、一次性校验码
session案例1:防止表单重复提交原理: 1,表单页面由servlet程序生成,servlet为每次产生的表单页面分配一个唯一的随机标识号,并在FORM表单的一个隐藏字段中设置这个标识号,同时在当前用户的Session域中保存这个标识号。 2,当用户提交FORM表单时,负责处理表单提交的serlvet得到表单提交的标识号,并与session中存储的标识号比较,如果相同则处理表单提交,处原创 2015-05-29 17:49:06 · 3419 阅读 · 0 评论 -
Filter
过滤器 1、概述:过滤器就像一个保安,可以对请求和响应进行拦截。2、编写过滤的步骤: 1)编写一个类,实现javax.servlet.Filter接口,这样的类一般称之为过滤器类 public class FilterDemo1 implements Filter { public void init(FilterConfig filterConfig) th原创 2015-05-30 23:16:01 · 753 阅读 · 0 评论 -
JavaBean
一、定义:JavaBean是一个遵循特定写法的Java类,它通常具有如下特点: 1,这个Java类必须具有一个无参的构造函数 2,字段必须私有化。 3,私有化的字段必须通过public类型的方法暴露给其它程序,并且方法的命名也必须遵守一定的命名规范。二、在JSP中使用JavaBean,即JSP中操作JavaBean的动作元素: <jsp:useBean /> 作用:用于在指定域范围内查找指定名称的JavaBean对象,找到了就直接使用;没有找到,创建一个,并放到指定的域范围内。 属性:原创 2015-05-22 22:22:37 · 850 阅读 · 0 评论 -
hibernate的查询方式
hibernate的查询方式 1,hql(hibernate query language) 2,Native query 3,Criteria(条件) query // 使用Criteria方式查询 @Test public void testCriteria() throws Exception { Session session = sessionFactory.原创 2015-09-23 15:50:05 · 566 阅读 · 0 评论 -
Spring中注解的使用
Spring中注解的使用 1)依赖注入:标注在字段或属性的setter方法上 1)@Autowired 根据类型查找 2)@Autowired + @Qualifier 根据名字(id)查找 3)@Resource 按名称查找,当找不到与名称匹配的bean时再按类型查找 说明: 1>@Resource注解是JSR-250标准注解,不是sp...原创 2015-09-23 16:19:05 · 805 阅读 · 0 评论 -
ormapping框架和jdbc的比较
ormapping框架的优点和缺点: 优点 1,比较简单,简化了DAO层的编码工作 2,数据缓存:一级缓存 二级缓存 查询缓存 3,移植性比较好 缺点 1,因为sql语句是hibernate内部生成的,所以程序员干预不了,不可控 2,如果数据库特别大,不适合用hibernatejdbc的优点和缺点: 缺点 1,查询代码特别繁琐 2,重复性代码特别多,原创 2015-09-23 15:42:41 · 1811 阅读 · 0 评论 -
Struts2对于国际化(i18n)的支持
Struts2对于国际化(i18n)的支持 1,准备资源文件,资源文件的命名格式如下: baseName_language_country.properties (baseName:资源的基名,需要自定义/language:Java支持的语言/country:Java支持的国家/) eg: 中国大陆:baseName_zh_CN.properties 美国:baseName原创 2015-09-23 16:37:53 · 1316 阅读 · 1 评论 -
Struts2自定义类型转换器
Struts2自定义类型转换器 1、编写一个类,继承com.opensymphony.xwork2.conversion.impl.DefaultTypeConverter 2、覆盖掉其中的public Object convertValue(Map context, Object value,Class toType) context:OGNL表达式的上下文 value:实际的值原创 2015-09-23 16:49:03 · 609 阅读 · 0 评论 -
Struts2中防止表单的重复提交
Struts2中防止表单的重复提交 1、在表单中加入标签 eg: 注:在浏览器里查看jsp页面的源码可以发现: 变成了: 2、到struts.xml中,在相应的action中配置token拦截器 /fail.jsp /success.jsp 3、增加一个名称为invalid.token的结原创 2015-09-23 16:54:33 · 620 阅读 · 0 评论 -
Hibernate的性能分析--懒加载、抓取策略、缓存策略
Hibernate的性能分析: 影响性能的3个方面:懒加载、抓取策略、缓存策略 说明:发出的sql语句越少,性能就越高。懒加载是研究什么时候发出SQL语句,抓取策略是研究怎么样发出SQL语句。 懒加载: 说明:主要研究类、集合、many-to-one在什么时候发出SQL语句并加载数据 1,类的懒加载 1,利用session.load方法可以产生代理对象 2,在sessi原创 2015-09-23 15:46:49 · 953 阅读 · 0 评论 -
java中使用restful web service来传输文件
【1】上传大文件: 前端页面: 1)同步上传: 2)异步上传: 异步上传文件 上传文件:原创 2016-11-09 19:18:59 · 13580 阅读 · 3 评论