- 浏览: 660097 次
- 性别:
- 来自: 杭州
最新评论
-
e_Inch_Photo:
这样配置之后,返回json数据直接报错:no convertt ...
Spring MVC3返回JSON数据中文乱码问题解决 -
BreakingBad:
表情图标表情图标http://www.iteye.com/im ...
文件下载(只需要简单的四步),Java中都通用 -
王庆波-行:
学习了,感谢分享
[oracle]windows 上 解决ORA-12560: TNS: 协议适配器错误 -
meigesir:
hy110912 写道不知道你从哪里抄来的 还是怎么样 报错 ...
SSH整合:使用DAO框架(BaseDao),DAO不写或少写,我们更加专注业务 -
hy110912:
不知道你从哪里抄来的 还是怎么样 报错都不知道 还令人兴奋 ...
SSH整合:使用DAO框架(BaseDao),DAO不写或少写,我们更加专注业务
文章列表
JAVA反射机制定义: JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
JAVA反射机制主要提供了以下功能:
1.在运行时判断任意一个对象所属的类
2.在运行时构造任意一个类的对象 3.在运行时判断任意一个类所具有的成员变量和方法(通过反射甚至可以调用private方法→需要取消Java语言访问检查:Method对象.setAccessible(true)) 4.在运行时调用任意一个对象的方法(*****
我们就直接切入主题啦,文件下载只需要四步:
1.设置文件ContentType类型
2.设置文件头
3.通过response获取ServletOutputStream对象(out)
4.写到输出流(out)中
下载代码:
这里我使用的是SpringMVC,不过它在这里的唯一用途就是用来获取ServletContext对象,这个对象的用途,下面实例中有说明
下载,需要用到两个jar包:commons-fileupload.jar和commons-io.jar
import org.springframework.stereotype.Controller;
impor ...
Oracle:当使用shutdown immediate命令关闭数据库后有时会出现无法连接数据库,只需要重启一下服务即可(OracleServiceORCL和OracleOraDb11g_home1TNSListener)
SpringMVC框架
Spring的web框架围绕DispatcherServlet设计。 DispatcherServlet的作用是将请求分发到不同的处理器。
DispatcherServlet类似Struts2的中央处理器,SpringMVC框架是被用来取代Struts2的,SpringMVC里面的Controller类似Struts2中Action
这里面我用的版本是SpringMVC3
SpringMVC开发步骤:
一、导入jar包:导入Spring中的aop、asm、aspects、beans、context、context.support、core、ex ...
Java中的两种中文转码方式,避免中文乱码:
第一种:
request.setCharacterEncoding("UTF-8");
第二种:
搜索的时候,也就是地址栏传值,如果用到中文关键字,就需要逐个用第二种方式转码:
假如对字符串变量str进行转码,代码如下:
str = new String(str.getBytes("ISO8859-1"), "UTF-8");
代理模式
代理模式为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个 客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间 起到中介的作用。
代理模式一般涉及到 ...
模版模式
又叫模板方法模式,在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情冴下,重新定义算法中的某些步骤。
我们使用冲泡咖啡和冲泡茶的例子
加工流 ...
外观模式
外观模式又叫门面模式,提供一个统一的接口,来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。
这里我们使用观看电影的实例,我们假设观看一部影片(watchMovie())的步骤:1.投影开2.幕布放下3.DVD播放4.音响打开;结束放映(closed())的操作应该是反过来的
实践步骤:
1>我们新建一个投影机(Diascope)类、幕布(Curtain)类、DVD类、音响(Sounder)类
package com.kaishengit.facade;
public class Diascope {
publ ...
适配器模式(Adapter Pattern):
适配器模式将一个类的接口,转化成客户期望的另一个接口,适配器让原本接口不兼容的类可以合作无间。
现实生活中有很多适配器的例子,例如:各种电源、各种USB连接线...
这里我们使用狼变成羊的例子,也就是披着羊皮的狼,其中的羊皮就是适配器,要不狼混不到羊群
实践步骤:
1>我们新建一个通用接口(Sheep)
package com.kaishengit.adapter;
public interface Sheep {
public void run();//跑
public v ...
命令模式是对命令的封装。命令模式把发出命令的责任和执行命令的责任分割开,委派给不同的对象。
我们使用遥控器的例子来说明一下命令模式
1>新建一个Command(命令)接口
package com.kaishengit.command;
public interface Command {
//命令对象方法
public void execute();
}
2>新建一个遥控器(发出命令对象)类:RemoteControl.java
package com.kaishengit.command;
import java.ut ...
一、工厂模式之简单工厂模式Simple Factory Pattern
工厂模式,Spring用的比较多
1>我们新建一个Dao接口
package com.kaishengit.factory.simple;
public interface Dao {
public void save();
}
接下来我们新建两个实现类:
1.MySqlDao.java
package com.kaishengit.factory.simple;
public class MySqlDao implements Dao{
@Override ...
单例模式(Singleton):单例模式确保一个类只有一个实例,并提供一个全局访问点。
两种方式:
一、饿汉式
package com.kaishengit;
public class Singleton {
//私有构造方法
private Singleton(){}
//提供私有的静态变量
private static Singleton singleton = new Singleton();
//提供公有的访问方法
/**
* @return
*/
public static Singleton getSingleton(){
...
装饰者模式定义:动态地将责任附加到对象上,如要扩展功能,装饰者提供了比继承更有弹性的替代方案。
在java的io中用的比较多
这里我们以蛋糕为例:
一、我们新建一个Cake接口
package com.kaishengit.decorator;
public interface Cake {
public float cost();
}
二、新建一个蛋糕类(实现Cake接口)和一个装饰接口(继承Cake接口)
1>蛋糕类:
package com.kaishengit.decorator;
public class MilkCake i ...
观察者模式:定义了对象间一对多的依赖,这样一来,当一个对象的状态改变时, 它的所有依赖都会自动收到通知并自动更新。
开发步骤:两种方法(这里我们假设自己是一个气象站,为移动设备提供天气数据)
一、使用自己的观察者模式
1>新建一个主题接口Subject和一个观察者接口Observer
<1>主题接口:新建三个方法,Subject.java
package com.kaishengit;
public interface Subject {
public void registerObserver(Observer observer);//用 ...
这种配置拦截器方式比struts使用注解配置拦截器的方式简单
配置步骤:
一、先写一个拦截器,因为我们重点在配置,这里我写了个登录拦截器(LoginInterceptor .java),继承AbstractInterceptor
package com.kaishengit.web.interceptor;
import java.util.Map;
import java.util.Set;
import com.kaishengit.pojo.Employee;
import com.opensymphony.xwork2.ActionInvocation;
...