04 2018 档案

摘要:一、简单参数: 其中:public String findAll(HttpServletRequest request, HttpServletResponse response, HttpSession session, Model model)controller类中的方法,自动重载,其中参数H 阅读全文
posted @ 2018-04-30 21:27 evil_liu 阅读(849) 评论(0) 推荐(0)
摘要:一、springmvc controller spring service mybatiss dao pring(包括springmvc)、mybatis、mybatis-spring整合包、数据库驱动、第三方连接池。 因为springmvc和spring属于同一个公司不需要整合包,而mybaits 阅读全文
posted @ 2018-04-30 17:36 evil_liu 阅读(305) 评论(0) 推荐(0)
摘要:一:springmvc 的角色定位就是web层,也就是表现层,接收前端请求,将请求参数传递给service的spring,再由spring传递给dao层的mybatis,将处理的结果在原路返回给springmvc,进行数据的处理和页面的渲染,返回给用户。 二、入门 1)导入jar包: 需要导入:sp 阅读全文
posted @ 2018-04-28 18:47 evil_liu 阅读(181) 评论(0) 推荐(0)
摘要:一、使用传统方式的dao的书写方式,不建议。目前采用的是动态代理的方式交给mybatis进行处理。 首先回顾下动态代理要求: 1)子配置文件的中,namespace需要是接口的全路径,id是接口的方法名称 这两项唯一确定我们的调用的接口。 2)子mapper文件的名称要和接口的名称保持一致。 3)参 阅读全文
posted @ 2018-04-28 14:21 evil_liu 阅读(1547) 评论(0) 推荐(0)
摘要:一:我们使用spring处理service,mybaits处理dao层。 二:导入jar包 pom.xml文件内容: 注意: 在引用jar包的话,会出现jar包冲突,注意版本的引用,最好版本号一致。 jar包清单: 三、配置文件整合 1)首先引用properites文件(注意引用外部文件使用clas 阅读全文
posted @ 2018-04-28 11:04 evil_liu 阅读(1819) 评论(0) 推荐(0)
摘要:一:阐述 我们在日常操作的时候,很多时候会遇到多表联合查询,由于参照物的不通 ,会出现一对一、一对多的情况。比如说:账号信息和订单表,从订单表角度和账号信息是一对一的情况(一个订单只能是一个用户的情况),从用户的角度,就会出现一对多的情况(一个用户会有多个订单)。 二、一对一: 需要清楚: 现在我们 阅读全文
posted @ 2018-04-26 13:27 evil_liu 阅读(342) 评论(0) 推荐(0)
摘要:动态sql 一:if标签使用: 我们在查询的时候,有时候由于查询的条件的不确定性,导致where的后面的条件的不同,这时候就需要我们进行where后面的条件进行拼接。 Mapper配置文件: 注意:我们需要使用SELECT * FROM t_account WHERE 1=1 AND 条件1 AND 阅读全文
posted @ 2018-04-25 18:07 evil_liu 阅读(465) 评论(0) 推荐(0)
摘要:一、我们在写类的时候。设置字段的时候含义: 简单的javabean类: 上面的类,如果对字段不进行设置的时候,也就是不进行set的设置的时候,属性字段的值为默认值。比如projo类的值为null,基本类型比如:int为0我们一起看下: 如果想字段要我们想要的值。需要通过set方法设置 我们可以看到通 阅读全文
posted @ 2018-04-25 16:51 evil_liu 阅读(139) 评论(0) 推荐(0)
摘要:一、输入映射 当前端传来的参数,比较复杂,比如说用户名称、订单单号、账号信息等等。后端有可能有多个projo类对应这些信息。我们需要把这些的projo类封装成一个类似一个vo类。 通过设置字段形式关联我们的多个projo类。这样在查询的时候会好些。这种方式叫做输入映射。 mapper配置文件: 动态 阅读全文
posted @ 2018-04-25 16:33 evil_liu 阅读(350) 评论(0) 推荐(0)
摘要:一:mybaits的核心配置文件:SqlMapConfig.xml 配置文件中需要关注的属性: 二、properites属性:一般引用配置文件(properites文件)比如:数据库的配置。我们可以编写一个db.properites文件。通过加载SqlMapConfig.xml文件优先读取prope 阅读全文
posted @ 2018-04-24 18:07 evil_liu 阅读(244) 评论(0) 推荐(0)
摘要:一、动态代理: mybaits给咱们提供一套动态代理,我们只需要按他的要求写接口即可,mybatis帮做动态代理,相当于咱们写的接口的实现类。底层通过反射实例化代理对象,通过代理对象调用相应的方法, 执行相应的数据库语句。 接口: mapper文件: 注意: mapper文件和接口的对应的关系: 1 阅读全文
posted @ 2018-04-24 16:49 evil_liu 阅读(218) 评论(0) 推荐(0)
摘要:注意:我们在resultType中,对于selectlist方法也是projo类。resultType参数的含义是list的泛型的类型。 一:jar包下载: https://github.com/mybatis/mybatis-3/releases?after=mybatis-3.2.8 我使用的版 阅读全文
posted @ 2018-04-24 11:23 evil_liu 阅读(319) 评论(0) 推荐(0)
摘要:一:简单介绍 他是一个帮我们管理jar,并帮助我们处理jar包依赖。 他是一个我们编译、测试、运行、打包的一键构建。 我们在使用后面的命令的同时,前面的过程也自动执行。 二、仓库的分类: 分本地仓库、远程仓库和中央仓库。 本地仓库的配置文件在: maven项目的目录结构: 在我们创建的项目的时候,j 阅读全文
posted @ 2018-04-22 17:11 evil_liu 阅读(243) 评论(0) 推荐(0)
摘要:一、我们之前在hibernate的时候,需要直接写事务,需要绑定当前线程保证获取同一个连接,虽然hibernate的帮我们封装绑定当前现成的操作,但是需要我们手动的去开启和关闭事务。 而spring帮我们自动管理事务。 二:事务: spring 事务的隔离级别的定义: TransactionDefi 阅读全文
posted @ 2018-04-22 13:41 evil_liu 阅读(276) 评论(0) 推荐(0)
摘要:一)使用DAO的jdbcsuport来简化开发 首先来清楚一个概念: 我们在进行配置文件来进行依赖注入的时候,主要是通过set方法来进行设置的。 正常我们使用spring的jdbctemplate的时候,我们需要注入DataSource和jdbctemplate两个类。而jdbcsuport帮我们做 阅读全文
posted @ 2018-04-21 05:22 evil_liu 阅读(293) 评论(0) 推荐(0)
摘要:一:引入jar包: 1、数据驱动jar包: dbcp依赖的包: spring的事务包和数据库包: IOC包AOP包、log4j的包: 所有的jar包: 编写测试类: 注入JdbcTemplate类,该类的父类有方法 setDatasource: 在直接配置文件依赖注入这个Datasource。 然后 阅读全文
posted @ 2018-04-20 15:55 evil_liu 阅读(163) 评论(0) 推荐(0)
摘要:一、准备工作: 1)导入jar包: 4个jar包。 2)约束:(spring需要所有的约束)有IOC约束和AOP 还有事务(tx)以及注解注入的约束(context)。 3)代码: 1、接口 2、实现类: 3、切面类: 需要注明该类为切面类。 需要注明方法的通知类型和切入点表达式。 4、配置文件配置 阅读全文
posted @ 2018-04-19 14:34 evil_liu 阅读(190) 评论(0) 推荐(0)
摘要:一:AOP的相关术语: 1)Joinpoint(连接点):所谓的连接点是指那些可以被拦截点,在spring中这些点是指方法。因为在spring中支持方法类型的连接点。 2)Pointcut(切入点):所谓切入点是对那些连接点进行定义(增强。)也就是说拦截点包含切入点。 3)Advice(通知/增强) 阅读全文
posted @ 2018-04-18 16:39 evil_liu 阅读(771) 评论(0) 推荐(0)
摘要:一:AOP(Aspect Oriented Programming)面向切面编程。 底层实现原理是java的动态代理:1、jdk的动态代理。2、spring的cglib代理。 jdk的动态代理需要被代理的对象有接口。 代码例子: 阅读全文
posted @ 2018-04-18 13:52 evil_liu 阅读(348) 评论(0) 推荐(0)
摘要:一、准备工作 1:Junit的需要的jar包: 2、spring的整合的jar包:spring-test-4.2.4.RELEASE.jar 3、代码实现 1) 2)注解对应的配置文件(内容为开启扫描组件) 3)导入依赖的类 4)直接方法调用。 完整代码: 阅读全文
posted @ 2018-04-17 22:09 evil_liu 阅读(277) 评论(0) 推荐(0)
摘要:一、首先需要引入jar包:spring-aop-4.2.4.RELEASE.jar。(在spring解压包libs内)。 二、如果注解方式注入依赖的对象,需要引用新的约束。 内的:xsd-configuration.html。打开网页中的:the context schema 粘贴复制: 写接口和实 阅读全文
posted @ 2018-04-17 18:19 evil_liu 阅读(419) 评论(0) 推荐(0)
摘要:1、如果配置文件比较长,可以分多个配置文件。有两种方式: 1)在主配置文件加标签<import/> 2)方式: 第二种方式很少用。 阅读全文
posted @ 2018-04-16 19:04 evil_liu 阅读(372) 评论(0) 推荐(0)
摘要:一:介绍 情景:我们在给程序分层的时候:web层、业务层、持久层,各个层之间会有依赖。比如说:业务层和持久层,业务层的代码在调用持久层的时候,传统方式:new 持久层类。 进而进行调用,这种方式会导致耦合性较高,在修改一层代码的时候,另一层的也需要更改代码。不利于维护。这种关系叫做“依赖”。 如何解 阅读全文
posted @ 2018-04-16 16:31 evil_liu 阅读(4244) 评论(0) 推荐(0)
摘要:一:粘贴约束url:http://www.springframework.org/schema/beans/spring-beans.xsd 二: 点击file -->setting 三:点击languages and Frameworks 四、点击Schjemas and DTDS 点击三按钮进行 阅读全文
posted @ 2018-04-16 11:27 evil_liu 阅读(1124) 评论(0) 推荐(0)
摘要:一、阐述: IoC:我们以前写的框架虽然我们已经进行分层,web、业务层、持久层。但是各个层之间的关系。耦合性比较高,那个层调用其他层的时候,需要new对应层的类的对象,这样的话,我们以后做修改的时候,需要更改各个层的调用。 耦合性比较高,不利于维护。 而Spring提出一个IoC的方式管理各个层的 阅读全文
posted @ 2018-04-13 15:25 evil_liu 阅读(407) 评论(0) 推荐(0)
摘要:一、strust2封装数据包含二部分: 数据在到Action类的时候,会经过拦截器,拦截器会有很多功能:比如数据封装、类型转换等。 我可以查看下strust-default.xml文件,看那些拦截器默认执行。 中的默认栈中的拦截器执行如下: 其中拦截器params和modelDriven分别为:属性 阅读全文
posted @ 2018-04-12 11:55 evil_liu 阅读(137) 评论(0) 推荐(0)
摘要:一: Action类的返回逻辑视图,一般会出现一个场景就是:当前package 标签下,几个action类需要返回同一个页面的时候。这个时候需要全局结果。 全局结果(使用标签<global-result>): 如果当前包内有全局和局部的结果页,优先局部页面。 二:结果页中的type类型: 我们在st 阅读全文
posted @ 2018-04-11 16:49 evil_liu 阅读(170) 评论(0) 推荐(0)
摘要:一:servlet API 1)完全解耦接口: 使用ActionContext类进行相关操作: jsp: 原生servletAPI这个比较常用(直接获取相应的域对象) 通过ServletActionContext对象获取相应的域对象。 阅读全文
posted @ 2018-04-11 14:34 evil_liu 阅读(159) 评论(0) 推荐(0)
摘要:一、Action书写方式: 接口地址:https://struts.apache.org/maven/struts2-core/apidocs/index.html Action类就是一个POJO类。 1、 POJO类:POJO(Plain Ordinary Java Object )简单的Java 阅读全文
posted @ 2018-04-10 19:17 evil_liu 阅读(1465) 评论(0) 推荐(0)
摘要:一、配置讲解: package标签: 1)package标签,name名字可以随便起,但是在strust.xml文件中,要保持唯一。 2)namespace:命令空间,表示访问的url以什么开始。比如说上面写:namespace="/aa/cc/",那么这个访问地址应该是:/aa/cc/hello. 阅读全文
posted @ 2018-04-10 15:27 evil_liu 阅读(194) 评论(0) 推荐(0)
摘要:一:Struts2执行流程: 1)编写页面,点击超链接,请求提交到服务器端。 2)请求先经过Struts2核心过滤器(StrutsprepareAndexectuterfilter)。 3)过滤器的功能是完成一部分代码。(dofilter放行。) 4)一系列的拦截器执行了。进行一些处理工作。 5)拦 阅读全文
posted @ 2018-04-10 11:05 evil_liu 阅读(155) 评论(0) 推荐(0)
摘要:一、介绍: Strust2是一个基于MVC设计模式的web应用框架,他的本质上相当于一个servlet,在MVC设计模式中,Strust2作为控制器(controller)来建立模型与视图的数据交互。 属于WEB层的。 web层框架特点: 1、都是一个特点,前端控制器模式。 2、记住:前端控制器(核 阅读全文
posted @ 2018-04-10 10:07 evil_liu 阅读(183) 评论(0) 推荐(0)
摘要:一、绑定本地session 原理:之前connection实现事务一个道理,2种方法:1、变量下传。2、因为servlet是单线程,和本地当前线程绑定。 配置: 1)配置核心配置文件hibernate.cfg 2)hibernate本身底层已经帮忙绑定当前线程(threadLocal)通过getCu 阅读全文
posted @ 2018-04-09 14:37 evil_liu 阅读(120) 评论(0) 推荐(0)
摘要:一、场景: 我们在并发操作数据库同一个字段,比如:name:tom age:22这条数据。有2个同时进行操作。A操作该数据的name改成admin,B操作这条数据的age改成:35。然后A先把数据更新(name:admin age:22)到数据库。 然后B将他修改的数据(name:tom,age:3 阅读全文
posted @ 2018-04-09 11:05 evil_liu 阅读(161) 评论(0) 推荐(0)
摘要:一、事务操作。 代码: 分三部分:使用try catch finally来控制事务。try正常执行的代码 catch捕捉错误如果有错误,就回滚。finally最后释放资源。 二、持久化类。 持久化类就是java类,这个java类和表建立映射关系。就是持久化类。也就是说javabean+xx.hbm. 阅读全文
posted @ 2018-04-08 16:16 evil_liu 阅读(139) 评论(0) 推荐(0)
摘要:一:介绍 hibernate是java中的dao层,即和持久层打交道。底层也是数据库驱动、连接等。他也有orm,类和数据库的映射。 二、部署 下载地址:https://sourceforge.net/projects/hibernate/?source=typ_redirect 1)包介绍: 2:) 阅读全文
posted @ 2018-04-08 10:23 evil_liu 阅读(158) 评论(0) 推荐(0)
摘要:1、数据库中的bigint是long类型。 2、在写javabean的时候字段类型不要写基本的数据类型比如:int foat 要写对应的包装类型,因为基本数据类型的默认值是0,而包装类的类型为null。 阅读全文
posted @ 2018-04-08 10:03 evil_liu 阅读(88) 评论(0) 推荐(0)
摘要:1)htmlcode: 2)servlet code 3)filter代码: 其中获取类的接口集合使用Class类的方法:getClassLoader() public Type[] getGenericInterfaces() 然后强转即可。 阅读全文
posted @ 2018-04-06 19:50 evil_liu 阅读(219) 评论(0) 推荐(0)
摘要:动态代理需要注意的: 一、静态代理和动态代理对比: 1、静态代理书写要求: 1)被装饰者和装饰者需要实现同一接口或者实现同一个类。 2)装饰者要有被装饰者的引用。 3)需要加强的方法进行加强。 4)不需要加强的方法,执行原方法。 2、动态代理方法 在项目运行的时候,生成一个代理的对象,对方法进行增强 阅读全文
posted @ 2018-04-06 16:14 evil_liu 阅读(142) 评论(0) 推荐(0)
摘要:一: 上传文件需要满足以下条件: 1、enctype="multipart/form-data" 方法为post。 2:servlet需要注解:@MultipartConfig。 3:<input name="f" type="file"> file类型的input标签。 4:servlet通过pa 阅读全文
posted @ 2018-04-03 17:01 evil_liu 阅读(136) 评论(0) 推荐(0)
摘要:1、之前我们创建的项目是servlet2.5,之前的版本,servlet、filter、listener需要配置web.xml 在servlet3.0的时候,没有web.xml,提供注解开发。 servlet注解:@WebServlet(name = "ServletDemo",urlPattern 阅读全文
posted @ 2018-04-03 14:41 evil_liu 阅读(108) 评论(0) 推荐(0)
摘要:一:概念 注解 在jdk5之后提供一个特性,和类、接口同级。 格式:@interface 注解名() 作用: 1、编译检查 2、替代配置文件 3、定义注解(元注解:注解上的注解。) java中三个注解 @override:声明该方法是从父类继承过来的,执行编译期检查。 @suppressWarnin 阅读全文
posted @ 2018-04-03 13:37 evil_liu 阅读(180) 评论(0) 推荐(0)
摘要:一、复习 加强方法: 1)继承 2)装饰模式 3)动态代理。 使用装饰模式: 1)要求装饰者和被装饰者实现同一个接口或者继承同一个类。 2)装饰者要求被装饰者的引用。 3)对于要加强的方法进行加强,对于不需要的加强,执行原先的方法。 二、需求分析 1)使用filter来对所有的请求进行过滤。需要设置 阅读全文
posted @ 2018-04-02 15:11 evil_liu 阅读(973) 评论(1) 推荐(0)
摘要:一:filter:过滤器,拦截servlet的请求和响应。 1、 需要继承抽象类Filter,需要重写init和destory方法以及doFilter()方法。如果想放行请求和响应需要调用类FilterChain的方法doFilter(servletRequest,serletRespone)。 s 阅读全文
posted @ 2018-04-01 14:11 evil_liu 阅读(429) 评论(0) 推荐(0)