自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(72)
  • 资源 (4)
  • 论坛 (1)
  • 收藏
  • 关注

原创 spring的IOC基于annotation

<br /><br />(不推荐)<br /> 步骤一:先查spring的文档找到annotation-based configuration<br />配置spring的配置文件。先将context的命名空间配上,再<context:annotation-config/>,这句实际上是生成了几个扫描spring自己注解的对象<br />步骤二:添加spring的注解 @Autowired(不推荐使用spring自己的注解)到相应的set方法上<br />注:<br />是按照byType注入的。<br /

2010-11-27 11:04:00 604

原创 spring的bean的生命周期 回调方法

<br /><br /> (不推荐)<br /><bean   xxxxx    init-method=""   destroy-method=""/><br />注:想看到bean销毁 需要 applicationContext.destroy();<br />applicationContext不管scope为prototype类型的bean的销毁,你将看不到destroy方法。<br /> <br />spring也支持JSR-250,java的注解@PostConstruct和@PreDestro

2010-11-27 11:03:00 844

原创 spring 的自动装配 autowire

<br /><br /> <bean  name="" class="" autowire=""/><br />byName   按名字自动装配<br />byType      按类型自动装配<br /> 注:也可以在beans总标签上default-autowire=""作为总的配置。<br />这样bean里面有如果有其他的bean作为属性需要setter注入,可以由spring注入。<br />不过并不用的多 因为我们必须很小心。

2010-11-27 11:02:00 496

原创 spring的 集合装配,properties,list,map

<br /><br /> <bean><br /> <br /><property name=""><br /><props><br /><pro key=""></pro><br /><pro key=""></pro><br /></props><br /></property><br /> <br /><property name=""><br /><list><br /><value></value><br /><ref bean=""/><br /></list><br /></property>

2010-11-27 11:00:00 928

原创 IoC 注入类型

<br /><br /> setter注入<br /><bean id="" class=""><br /><property name="" ref=""/><br /></bean><br />construct注入(不常用)<br /><bean id="" class=""><br /><constructor-arg index="0"><br /><bean class=""/><br /></constructor><br /><constructor-arg index="1"><br />

2010-11-27 10:59:00 476

原创 spring bean 的生存范围 单例 还是原型

<br /><br /> <bean id="" class="" scope=""/><br />scope  :<br />singleton:单例    (默认)<br />prototype:原型<br /> <br />request,session,global session(非常不常用)

2010-11-27 10:59:00 571

原创 spring 的IoC的几种实现,关于API的一些事儿

<br /><br />Don't call me ,I'll call you!<br />创建对象实例的任务交给IoC容器或框架。<br />IoC的好处:1,应用组件不在需要特定 协助工厂类,如IoC容器中组件对JNDI的查找工作。<br />2,单元测试和集成测试更简单。<br />org.springframework.beans.factory<br />BeanFactory<br />org.springframework.context<br />ApplicationContext  

2010-11-27 10:58:00 372

原创 spring 的IoC的几种实现,关于API的一些事儿

<br /><br />Don't call me ,I'll call you!<br />创建对象实例的任务交给IoC容器或框架。<br />IoC的好处:1,应用组件不在需要特定 协助工厂类,如IoC容器中组件对JNDI的查找工作。<br />2,单元测试和集成测试更简单。<br />org.springframework.beans.factory<br />BeanFactory<br />org.springframework.context<br />ApplicationContext  

2010-11-27 10:58:00 401

原创 spring的bean的生命周期

<br /><br /> 1,spring通过调用构造器,构造bean<br />2,这个bean里有些对象属性需要通过对应得set方法,依赖注入。<br />(这是我们用IoC的重要原因,由spring来管理各个bean的关系而不是我们硬编码来管理,这也是为什么叫控制反转的原因)<br />(如果实现了InitializingBean执行afterPropertiesSet方法,<br />指定init-method属性,则将调用其指定的方法)<br />3,使用这个bean啦<br />4,spring

2010-11-27 10:58:00 353

原创 spring的bean工厂的产生

<br /><br />http://sourceforge.net/projects/springframework      (spring 的下载链接)<br /> <br />Resource resource=new  ClassPathResource("appcontext.xml");<br />BeanFactory  factory=new XmlBeanFactory(resource);<br />HelloWorld helloWorld =(HelloWorld) factory

2010-11-27 10:57:00 1077

原创 hibernate 的性能优化

<br /><br />一级缓存(session级别的缓存)<br />List<User> users=(List<User>)session.createQuery(SQL);<br />Iterator<User> users=(Iterator<User>)session.createQuery(SQL);<br />List------->直接数据库加载User<br />Iterator----->读出来的是ID------->先在session中找----.>在二级缓存中找(如果提供二级缓存)

2010-11-27 10:56:00 382

原创 补充:1+N问题和缓存算法

<br /><br /> 1+N问题<br />问题描述<br />在manyToOne的关系中,JPA默认的fetch策略是EAGER积极的,因此在查找多方的表的时候会连带查询1方的表。<br />本来是使用join表连接查询一句SQL语句就解决的,但是hibernate不会就行表连接查询,而是先查多方的表发一句SQL,然后根据结果中的外键,一个外键一句SQL去查询1方的表,结果就变成了1+N句SQL语句了。<br />解决方法:<br />方式一:强制改变默认的抓取策略为LAZY<br />方式二:在J

2010-11-27 10:56:00 319

原创 hibernate实现 api调用标准流程

<br /><br /> Configuration cfg=new AnnotationConfiguration();    <br />//这里是annotation的configuration,不是普通的<br />SessionFactory sessionFactory=cfg.configure().buildSessionFactory();<br />Session session=sessionFactory.openSession();<br />session.beginTransa

2010-11-27 10:55:00 437

原创 hibernate初步印象- 工作流程

<br /><br /> hibernate工作流程<br /><br />www.hibernate.org

2010-11-27 10:54:00 390

原创 hibernate 配置

<br /><br /> hibernate用的是日志是slf4j 即simple logging facade for java,<br />slf4j支持匹配各种 日志的实现<br />GA=General Availability<br />slf4j-api-1.5.2.jar  -----slf4j  api<br />slf4j-log4j-1.5.2.jar  -----slf提供的和log4j的适配<br />log4j-1.2.15.jar     ------log4j的api<br /

2010-11-27 10:54:00 363

原创 struts2标签

<br /><br /> 通用标签<br /><s:property   value="<hr/>"  escape="false"/>  <br />escape为false表明value不会被解析为HTML<br /><s:property value="OGNL"  default="  "/><br /><s:property value=" 'OGNL'  "  default="  "/>  这样就解析为字符串了<br /><br /><s:set  var=" A"   value="OGNL

2010-11-27 10:53:00 366

原创 jsp到action的类型转换的问题

<br /><br />?d=1989-08-24<br />?d=1988-11-21 12:39:45<br />以上格式的URL会自动转换为date类型

2010-11-27 10:52:00 433

原创 OGNL表达式

<br /><br />OGNL<br />name                   //访问action的name普通属性<br />user.name                 //调用了user的getName<br />user.run()                 //调用user的run()方法<br />如果要调用静态方法的话必须<br /><constant name="struts.ognl.allowStaticMethodAccess" value="true"></c

2010-11-27 10:52:00 358

原创 struts 2 的Result

<br /><br /> <result type="dispatcher">index.jsp</result><br />dispatcher:默认,服务器forword<br />redirect              (重定向,发起新的request)<br />chain               (可以跳向另外一个Action)<br />redirectAction       (跳向另外一个action,并且发起新的request)<br />stream             (下

2010-11-27 10:51:00 339

原创 struts2得到request,session 及action总结

<br /><br /> 第一大类:得到Map类型<br />1,ActionContext.getContext.get("request")  //是从值站的actionContext中得到<br />ActionContext.getContext.getSession():Map<br />2,implements SessionAware(推荐)<br />@override<br />setSession(Map  session)<br />第二大类:得到如HttpServletRequest

2010-11-27 10:50:00 368

原创 struts2简单验证 与 Acton向jsp传递数据的途径

<br /><br /> 简单验证<br />action内(extends ActionSupport)<br />this.addFieldError("error1","error-message");<br />jsp内<br /><%@taglib uri="/struts-tags" prefix="s"%><br /><s:fielderror fieldName="error1"  theme="simple"/><br /><s:property value="errors.name[0]

2010-11-27 10:49:00 453

原创 struts2搭建开发流程要点

<br /><br />1,web.xml中添加如下struts2的过滤器,即所有的servlet请求都过滤<br /> <br />  <display-name>struts2_spring</display-name><br />   <filter><br />  <filter-name>struts2</filter-name> <br />  <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecut

2010-11-27 10:48:00 630

原创 WEB层访问会话bean

<br /><br /> 使用依赖注入访问会话bean(无状态)<br />注意:只有受管的类(如:servlet)才可以使用依赖注入,其生命周期由容器管理。<br />不受管的类可以通过JNDI查找的方式得到EJB bean<br />一下说明web层哪些是受管的类的类型注入servlet,过滤器,事件监听器可以JSP 标记处理器,库事件监听器可以JSF管理的bean可以帮助器类,JSP不可以<br />1使用@EJB 注入无状态会话Bean<br />2 当Web访问有状态的会话bean比如servle

2010-11-27 10:45:00 472

原创 EntityManager实体操作

<br /><br />EntityManager<br /> 持久化实体 persist(entity)<br />newEntity-----托管<br />托管-----无效,什么都不发生<br />删除状态------托管<br />游离-----提交时 例外抛出<br />更新实体<br />对实体的setXxx()方法的调用在容器flush时都会更新的<br />合并merge()<br />newEntity----copy一份----copy的那一份托管<br />托管----无效<br /

2010-11-27 10:43:00 676

原创 EJB开发web service

<br /><br />服务端的开发<br />用EJB就行服务端开发是非常简单的,EJB可以把无状态会话bean通过@WebService注解瞬间暴露为web服务。<br />例子<br /> <br />@Stateless<br />@Remote(JsunSer.class)<br />@WebService<br />public class JsunSerImpl implements JsunSer{<br />@WebMethod<br />public String run() {<br

2010-11-27 10:42:00 851

原创 MDB 消息驱动bean开发

<br /><br />MDB用于异步通信,其原理与android中的Intent和IntentFilter类似<br />MDB实际就是个监视特定地点destination的监听器<br />关于消息MDB只关心 消息格式和消息目的<br />JMS异步,安全(确保发送成功且只发送一次消息)<br />JMS像JDBC一样只是一个接口,标准。有P2P和Pub/Sub两种形式<br />消息分为 消息头,消息属性,消息体<br />MDB开发流程。(和MDB通信的唯一手段是将JMS消息发送给MDB正在监听的

2010-11-27 10:41:00 701

原创 JTA 事务管理

<br /><br /> 分为<br />CMT   容器管理事务(推荐)<br />@TransactionManagement(TransactionManagementType.CONTAINER)(类级别注解)<br />CONTAINER指明CMT容器管理事务,BEAN指明BMT管理<br />@TransactionAttribute(TransactionAttributeType.REQUIRED)(方法级别注解)<br />  非事务性上下文Client事务性上下文ClientREQUIR

2010-11-27 10:40:00 1587

原创 JPQL

<br /><br /> select name ,age from user; //原生SQL语句<br />select u.name,u.age from User u;  //JPQL语句<br />select u from User u;  //JPQL语句<br />SQL语句是在数据库空间中对字段,列,行进行操作<br />JPQL语句是在EJB实体空间中面向对象,属性进行操作<br />JPQL必须由JPA的JPQL解析器解析为SQL才能执行,必须先获取Query对象<br />参数查询<

2010-11-27 10:39:00 637

原创 实体bean的开发

涉及的注解@Entity(name="")  name属性指明了JPQL中使用的实体名@Table(name="xxx")@Id@GeneratedValue(strategy=GenerationType.AUTO)GenerationType.TABLE       //会创建一个表 具有序列名和对应值两个字段,易于数据库移植GenerationType.SEQUENCE   //支持序列的数据库 如 OracleGenerationType.IDENTITY        //使用ID自动增长 如my

2010-11-27 10:38:00 445

原创 对象关系映射

<br /><br /> 双向一对一映射<br />class  Card{<br />@OneToOne(optional=false,cascade={CascadeType.MERGE,CascadeType.REMOVE},mappedBy="card",fetch=FetchType.EAGER)<br />Person getPerson(){}<br />}<br />mappedBy   单向关系不需要设置该属性,双向关系必须设置,避免双方都建立外键字段<br />数据库中1对多的关系,关联

2010-11-27 10:38:00 1746

原创 EntityManager的注入

<br /><br /> 第一步:服务器数据源发布 <br />第二步:持久化单元配置<br />persistence.xml   放置到jar包的META-INF<br /> <br /><?xml version="1.0" encoding="UTF-8"?><br /><persistence xmlns="http://java.sun.com/xml/ns/persistence"<br />xmlns:xsi="http://www.w3.org/2001/XMLSchema-instanc

2010-11-27 10:37:00 1658

原创 EJB3.0中 持久化层的开发

<br /><br /> EJB3.0中的持久化是有JPA管理的<br />包括三个部分<br />1。实体<br /> <br /> <br />@Entity<br />@Table(name="users")<br />public class User implements Serializable{<br />@Id@GeneratedValue(strategy=GenerationType.AUTO)<br />private int id;<br />@Column(nullable=fal

2010-11-27 10:35:00 541

原创 会话bean 知识补充

<br /><br />1 改变会话bean的JNDI名<br />@Stateless(name="A_Bean")         //此处定义的是beanName,注入此bean到其它的bean时会用到<br />@Remote(A.class) <br />@RemoteBinding(jndiBinding="AA")    //@Stateless(mappedname=" ")可以统一规定全局jndi名,而不是远程,本地分别各自定义<br />class ABean implements A{

2010-11-27 10:33:00 454

原创 会话bean开发流程

<br /> <br />1 创建接口(最佳实践是创建两个接口A与B,B extends A)<br />interface A{}<br />interface B extends A{}<br />2 创建实现接口的会话bean,<br /> <br />@Stateless / @Stateful   ------生成全局JNDI(就是可以被外界访问的JNDI) 两个  HelloWorldBean /remote   HelloWorldBean /local<br />@Local(A.class

2010-11-27 10:32:00 357

原创 JBOSS在windows下的环境配置和启动时遇到的错误

 1  JDK的安装。(JBoss下载时要分清支持jdk1.5和1.6两种,如jboss-5.0.0.GA-jdk6就是支持JDK1.6的JBoss)JBoss下载链接http://labs.jboss.com/jbossas/downloads/2  配置环境变量JBOSS_HOME指向 如jboss-5.0.0.GA-jdk6  (类似配置JAVA_HOME)3 编辑环境变量Path添加    ;%JBOSS_HOME%/bin; (环境变量Path是为了可以在DOS下直接调用bin里的命令,而不需要特

2010-11-27 10:29:00 488

原创 spring的IOC基于annotation

(不推荐) 步骤一:先查spring的文档找到annotation-based configuration配置spring的配置文件。先将context的命名空间配上,再,这句实际上是生成了几个扫描spring自己注解的对象步骤二:添加spring的注解 @Autowired(不推荐使用spring自己的注解)到相应的set方法上注:是按照byType注入的。还可以在参数上

2010-11-26 17:40:00 539

原创 spring的bean的生命周期 回调方法

 (不推荐)注:想看到bean销毁 需要 applicationContext.destroy();applicationContext不管scope为prototype类型的bean的销毁,你将看不到destroy方法。 spring也支持JSR-250,java的注解@PostConstruct和@PreDestroy(推荐)

2010-11-26 16:52:00 439

原创 spring 的自动装配 autowire

 byName   按名字自动装配byType      按类型自动装配 注:也可以在beans总标签上default-autowire=""作为总的配置。这样bean里面有如果有其他的bean作为属性需要setter注入,可以由spring注入。不过并不用的多 因为我们必须很小心。

2010-11-26 16:41:00 335

原创 spring的 集合装配,properties,list,map

   /list>   

2010-11-26 16:25:00 590

原创 spring bean 的生存范围 单例 还是原型

 scope  :singleton:单例    (默认)prototype:原型 request,session,global session(非常不常用)

2010-11-26 16:18:00 1906

openfire+connection mananger +strophe.js不兼容修复

官方的strophe.js库在通过connection manager提供的bosh接口连接openfire的时候,无法成功完成建立连接,我的这个js要在strophe.js被引进后再引进其它的开发的部分不需要修改。

2012-05-07

简单干净的,支持JSF2上传的例子

简单干净的,支持JSF2上传的例子 the serach is over 使用起来很简单,一看就明白,核心的就两个类。外带例子页面和backBean。一个项目只引入一个就可以支持所有JSF2页面的上传功能。

2011-03-21

JSF2.0 的ajax实现的例子,配有详细的中文注释

JSF2.0 自带的ajax实现很方便, 有多个工程可演示,必须在Tomcat6,jboss5,glassfish3才支持JSF2.0

2011-02-28

android入门之深入浅出

这是 图灵图书出版的android入门经典书籍 特此共享

2010-08-30

孙大大的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除