- 博客(38)
- 收藏
- 关注
原创 Spring MVC 初尝试
刚开始学习Spring MVC,之前了解过MVC模式,因此学习这个的时候,也不是那么困难.先上代码: 项目文件目录: web.xml<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xml...
2018-04-22 09:40:23 81
原创 Spring在XML中声明切面
在Spring的AOP命名空间中,提供了多个元素用来在XML中声明切面,如下图所示: 重新看之前提过的Audience类,将AspectJ注解全部移除:package main.java;import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.*;import org.spr...
2018-04-18 11:43:15 299
原创 Spring通过注解引入新功能
(接上篇Spring使用注解创建切面) 一些编程语言,如Ruby,有开放类的理念.就可以不直接修改对象或类的定义就能够为对象或类增加新的方法;不过Java并不是动态语言.一旦类编译完成,就很难再为类添加新的功能.但利用被称为引入的AOP概念,切面可以为Spring bean添加新方法. 下面将尝试为之前Performance实现下面的Encoreable接口:packa...
2018-04-18 11:15:57 834
转载 解决spring使用动态代理类型转换失败的问题--java.lang.ClassCastException: com.sun.proxy.$Proxy$ cannot be cast to ...
转载自:http://blog.csdn.net/yinzn2011/article/details/46455973今天在学习spring aop中的动态代理时,碰到了一个类型转换的问题:java.lang.ClassCastException: com.sun.proxy.$Proxy8 cannot be cast to com.bjsxt.service.UserServiceImpl01...
2018-04-18 10:37:11 946 1
原创 Spring使用注解创建切面
(接上篇Spring通过切点来选择连接点)定义切面: 下面将展示Audience类,它定义了一个切面:package main.java;import org.aspectj.lang.annotation.*;/** * @author [email protected] * @date 18-4-18 上午8:56 */@Aspectpublic class Audi...
2018-04-18 10:33:58 254
原创 Spring通过切点来选择连接点
方法切点函数函数入参说明示例execution()方法匹配字符串满足某一匹配模式的的所有目标类方法连接点execution(* com.yc.service.*.*(..))在配置service层的事务管理时常用,定位于任意返回类型(第一个”*”) 在com.yc.service包下的所有类(第二个”*”)下的所有方法(第三个”*”),且这个方法的入参为任意类型、数量(体现在 “(..)“)@an...
2018-04-18 08:54:45 415
原创 Spring面向切面编程 -- Spring对AOP的支持
Spring提供了4中类型的AOP支持: 1.基于代理的经典Spring AOP 2.纯POJO切面 3.@AspectJ注解驱动的切面 4.注入式AspectJ(适用于Spring各版本) 前三种都是Spring AOP实现的变体,Spring AOP构建在动态代理基础之上,因此,Spring对AOP的支持局限于方法拦截Spr...
2018-04-17 11:28:39 287
原创 Spring面向切面编程 -- 定义AOP术语
通知(Advice): 在AOP术语中,切面的工作被称为通知. Spring切面可以应用5种类型的通知: 1.前置通知(Before):在目标方法被调用之前调用通知功能 2.后置通知(After):在目标方法抛出异常或完成之后调用通知;此时不会关心方法的输出是什么 3.返回...
2018-04-17 11:17:34 158
原创 Spring中Bean的作用域
在默认情况下,Spring应用上下文中所有bean都是作为单例的形式创建的.大所属情况下,单例bean是很理想的方案.但有时候,单例bean不是什么很好的主意. Spring定义了多种作用域,可以基于这些作用域创建bean,包括: 1.单例(Singleton):在整个应用中,只创建bean的一个实例 2.原型(Prototype):每次注...
2018-04-17 09:46:06 108
原创 Spring处理自动装配的歧义性
Spring自动装配Bean的歧义性: 自动装配Bean能够提供很大的帮助,因为它会减少装配应用程序组件时所需要的显示配置的数量.不过,仅有一个bean匹配所需的结果时,自动装配才是有效的.如果有不止一个bean能够匹配结果的话,这种歧义性会阻碍Spring自动装配属性,构造器参数或方法参数. 假设有如下Setter方法: @Autowired publi...
2018-04-17 09:21:01 166
原创 Spring中条件化的Bean
@Conditional注解可以用到带有@Bean注解的方法上.如果给定的条件计算结果为true,才会创建这个Bean. 例子如下:package main.java.Demo1;import org.springframework.context.annotation.Condition;import org.springframework.context.a...
2018-04-16 17:38:42 131
原创 Spring中环境与profile
在软件开发的过程中,通常会经过开发环境,测试环境和生产环境;Spring中Profile的配置可以让我们不用担心这个问题.配置profile bean 在Java配置中,可以使用@Profile注解指定某个bean属于哪一个profile.package main.java.Demo1;import org.springframework.context.annotation.B...
2018-04-16 17:12:15 146
原创 Spring装配Bean -- 通过XML装配Bean
创建XML配置规范 最简单的Spring XML配合如下所示:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-inst...
2018-04-16 16:35:16 100
原创 Spring装配Bean -- 通过Java代码装配Bean
接上篇<<自动化装配Bean>>,创建对应组件如下:创建可被发现的Bean: 创建CD接口:package main.java.Demo1;/** * @author [email protected] * @date 18-4-15 下午6:53 */public interface CompactDisc { void play();} ...
2018-04-16 09:13:07 273
原创 Spring装配Bean -- 自动化装配Bean
Spring从两个角度来实现自动化装配: 组件扫描(component scanning):Spring会自动发现应用上下文中所创建的Bean 自动装配(autowiring):Spring自动满足Bean之间的依赖组件扫描和自动装配组合在一起能将显式配置降低到最少创建可被发现的Bean: 创建CD接口:package main.java.Demo1;...
2018-04-15 21:23:56 151
原创 Spring装配Bean
Spring配置的可选方案: 主要有三种装配机制(可点击查看具体内容): 在XML中进行显式配置 在Java中进行显式配置 隐式的bean发现机制和自动装配 总的来说,显式配置越少越好.当必须显式配置Bean的时候,推荐使用类型安全并且...
2018-04-15 20:41:38 72
原创 Spring实战 -- 1.1.2依赖注入
概念: 依赖注入一词让人望而生畏,但现在已经演变成复杂的编程技巧或设计模式理念. 在项目中应用DI(Dependency Injection, DI),可以使代码更容易理解和测试.DI功能是如何实现的: 一个应用都会由多个类组成,每个对象负责管理与自己相互协作的对象的引用,这样会使代码高度耦合和难以测试. 举个类似的例子:package m...
2018-04-14 20:17:06 105
原创 mybatis配置文件详解 一
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configurat
2018-04-11 10:58:04 101
原创 Java JDBC连接数据库
package MysqlConnection;import java.sql.*;public class Test { public static void main(String[] args) { // https://blog.csdn.net/javaniuniu/article/details/52403509 try { // 1、加载JDBC驱动程序 ...
2018-04-10 21:02:43 60
原创 mybatis简单实例 -- 初窥mybatis
先上项目截图:项目框架如图log4j.properties:# Global logging configurationlog4j.rootLogger=DEBUG, stdout# Console output...log4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.layout=org....
2018-04-10 20:55:00 210
原创 539. Minimum Time Difference
Given a list of 24-hour clock time points in "Hour:Minutes" format, find the minimum minutes difference between any two time points in the list.Example 1:Input: ["23:59","00:00"]Output: 1Note:The nu...
2018-04-10 11:11:08 92
原创 HttpServletResponse常见应用——设置响应头控制浏览器的行为
设置http响应头控制浏览器禁止缓存当前文档内容 1 response.setDateHeader("expries", -1);2 response.setHeader("Cache-Control", "no-cache");3 response.setHeader("Pragma", "no-cache");设置http响应头控制浏览器定时刷新网页(refresh)1 respo...
2018-04-09 08:50:31 1192
原创 在客户端缓存Servlet的输出
在客户端缓存Servlet的输出 对于不经常变化的数据,在servlet中可以为其设置合理的缓存时间值,以避免浏览器频繁向服务器发送请求,提升服务器的性能。例如:package Java.Servlet;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax...
2018-04-08 21:15:11 164
原创 ServletContext对象详解
ServletContext对象 WEB容器在启动时,它会为每个WEB应用程序都创建一个对应的ServletContext对象,它代表当前web应用。 ServletConfig对象中维护了ServletContext对象的引用,开发人员在编写servlet时,可以通过ServletConfig.getServletContext方法获得ServletContext对象。 由于一个WEB应用...
2018-04-08 21:07:01 254
原创 ServletConfig讲解
配置Servlet初始化参数 在Servlet的配置文件web.xml中,可以使用一个或多个<init-param>标签为servlet配置一些初始化参数。例如:<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xml...
2018-04-08 20:34:33 69
转载 IntelliJ IDEA 源值1.5已过时,将在未来所有版本中删除
idea工具编译运行代码的时候总是提示这个问题,以下是简书@AnaKinSky的解释与解决方案:原因:IDEA默认把项目的源代码版本设置为jdk1.5,目标代码设置为jdk1.5解决方案:1修改Maven的Settings.xml文件添加如下内容<profile> <id>jdk-1.8</id> <activation> <a...
2018-04-08 19:21:55 144
原创 JSP+Servlet+JavaBean模式 -- 简易登录注册模型
模式分析:对于Jsp来说:Model层:实现系统的业务逻辑,即javaBean部分View层:负责与用户交互,即在界面上展示数据对象给用户,即html,jspControl层:Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作,当然就是Servlet的职责了。Model层代码:User.Javapackag...
2018-04-08 09:07:04 662
原创 JDBC连接MySQL数据库
以下为JDBC连接MySQL数据库的一个简单示例:package MysqlConnection;import java.sql.*;public class Test { public static void main(String[] args) { // https://blog.csdn.net/javaniuniu/article/details/52403509 tr...
2018-04-07 14:52:33 117
原创 JavaBean学习总结
1. JavaBean技术 JavaBean: 是一些可移植,可重用,并可以组装到应用程序中的Java类 JavaBean: 较好地实现后台业务逻辑和前台表示逻辑的分离,使得JSP程序更加可读和易维护2. JavaBean的设计 命名规范: 1)JavaBean类打包存放,并声明为public类 ...
2018-04-07 14:42:41 437
原创 Servlet学习总结三
1. Servlet生存周期 Servlet生命周期始于将它装入Web服务器的内存时,并在终止或重新装入Servlet时结束 其主要有三个阶段 1)初始化,对应init()方法 2)请求处理,对应Service()方法 3)终止,对应destroy()方法2. init()方法 ...
2018-04-07 13:55:54 89
原创 Servlet学习总结二
1. Servlet Session技术 获取Session方法: HttpSession session = request,getSession(); HttpSession对象可用的几个重要的方法1public Object getAttribute(String name)该方法返回在该 session 会话中具有指定...
2018-04-07 13:37:53 105
原创 Servlet学习总结一
1. Servlet概述 Servlet是一种服务器端Java应用程序 Servlet能动态响应客户端请求,生成动态的Web页面,从而扩张服务器的功能 Servlet有Servlet容器管理(Servlet的运行环境)2. Servlet特点 高效 每一个请求有一个轻量级的Java线程处理 移植性好...
2018-04-07 13:07:53 758
原创 JSP学习总结五
使用cookie Cookie是存储在客户机的文本文件,它们保存了大量轨迹信息。在servlet技术基础上,JSP显然能够提供对HTTP cookie的支持。 通常有三个步骤来识别回头客: 服务器脚本发送一系列cookie至浏览器。比如名字,年龄,ID号码等等。 浏览器在本地机中存储这些信息,以备不时之需。 当下一次浏览器发送任...
2018-04-07 11:17:35 165
原创 JSP学习总结四
1. Session对象 1)session代表服务器和客户端所建立的回话 从一个客户端打开浏览器并连接到度武器开始,到客户关闭浏览器离开这个服务器结束这个过程,被称为一个回话 2)当一个客户首次访问服务器上页面时,服务器将产生一个session对象,同事分配一个String类型的ID号 3)session可以实现在一个绘画器...
2018-04-07 11:07:56 142
原创 JSP学习总结三
1. JSP内置对象 1)request对象 2)response对象 3)session对象 4)application对象 5)out对象2. request对象 1)request对象中封装了客户端发送过来的所有的请求数据(包括请求头信息,请求方式,客户端IP地址以及请求参数信息) 2)requ...
2018-04-07 10:13:08 66
原创 JSP学习总结二
1. JSP动作组件 1)<jsp:include>: 在页面中包含一个文件 2)<jsp:forward>: 把请求转发到另一个新的页面 3)<jsp:param>: 在动作组件中引入参数信息 4)<jsp:useBean>: 寻找或实例化一个JavaBean ...
2018-04-07 09:52:16 148
原创 JSP学习总结一
1. JSP概述 JSP即Java Server Page,是在传统的HTML文档中插入Java程序段或JSP标签而形成的程序(.jsp),是一种实现静态HTML和动态HTML混合编码的技术. 示例:<%@ page import="java.util.Date" %><%@ page import="java.text.SimpleDateForm...
2018-04-07 09:39:46 179
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人