zoukankan      html  css  js  c++  java
  • spring + hibernate 配置

    http://hi.baidu.com/xogjghsfhjemorr/item/cea598dd22e75e2a39f6f726

    applicationContext.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
        
        <bean id="propertyConfigurer" 
            class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
            <property name="locations">
                <value>classpath:/deploy.properties</value>
            </property>
        </bean>
        
    <!-- 注入数据源 -->
    <bean id="dataSource"
       class="org.apache.commons.dbcp.BasicDataSource">
       <property name="url">
        <value>${database.url}</value>
       </property>
       <property name="driverClassName">
        <value>${database.driver}</value>
       </property>
       <property name="username">
        <value>${database.username}</value>
       </property>
       <property name="password">
        <value>${database.password}</value>
       </property>
       <property name="maxWait">
        <value>5000</value>
       </property>
       <property name="maxIdle">
        <value>5</value>
       </property>
       <property name="maxActive">
        <value>50</value>
       </property>
    </bean>
    <bean id="sessionFactory"
       class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
       <!--hibernate数据源配置,如果启用的话,则使用Apache DBCP提供的连接池,而不是下面指定的C3P0,用spring 就要用到-->
       <property name="dataSource">
        <ref local="dataSource" /><!-- 注入数据源 -->
       </property>
       <!-- hibernate 参数设置 -->
       <property name="hibernateProperties">
        <props>
         <!-- 指定Hibernate的连接方言 org.hibernate.dialect.Oracle9Dialect-->
         <prop key="hibernate.dialect">
          org.hibernate.dialect.MySQLDialect
         </prop>
         <prop key="hibernate.connection.driver_class ">
          com.mysql.jdbc.Driver
         </prop>
         <prop key="hibernate.connection.url">
          jdbc:mysql:http://localhost:3306/test
         </prop>
         <prop key="hibernate.connection.username">root</prop>
         <prop key="hibernate.connection.password">fytcm</prop>
         <prop key="hibernate.show_sql">true</prop>
         <prop key="hibernate.c3p0.max_size">5</prop>
         <prop key="hibernate.c3p0.min_size">5</prop>
         <prop key="hibernate.c3p0.timeout">5000</prop>
         <prop key="hibernate.c3p0.max_statements">100</prop>
         <prop key="hibernate.c3p0.idle_test_period">3000</prop>
         <prop key="hibernate.c3p0.acquire_increment">2</prop>
         <prop key="hibernate.c3p0.validate">false</prop>
         <prop key="hibernate.cglib.use_reflection_optimizer">
          false
         </prop>
         <prop key="hibernate.jdbc.fetch_size">50</prop>
         <prop key="hibernate.jdbc.batch_size">30</prop>
         <prop key="hibernate.use_outer_join">false</prop>
        </props>
       </property>
       <!--hibernate O/R mapping文件位置-->
       <property name="mappingResources">
        <list>
         <value>config/hbm/Team.hbm.xml</value>
        </list>
       </property>
       <!-- 集体写入,放在文件夹中
        <property name="mappingDirectoryLocations">
        <list>
        <value>classpath:/config/hbm</value>
        </list>
        </property>        
       -->
    </bean>
    <!--Hibernate模板定义-->
    <bean id="hibernateTemplate"
       class="org.springframework.orm.hibernate3.HibernateTemplate">
       <property name="sessionFactory">
        <ref bean="sessionFactory" />
       </property>
    </bean>
    <!-- 持久层操作 -->
    <bean id="teamDao" class="com.zd.dao.impl.TeamDao">
       <property name="hibernateTemplate">
        <ref local="hibernateTemplate" />
       </property>
    </bean>
    
    </beans>
    ==============================================================
    src/deploy.properties
    database.url =jdbc:mysql://localhost:3306/test
    database.driver =com.mysql.jdbc.Driver
    database.username =root
    database.password =fytcm
    ======================================================
    web.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <context-param>
       <param-name>contextConfigLocation</param-name>
       <param-value>/WEB-INF/classes/applicationContext.xml</param-value>
    </context-param>
    <!-- 
    <listener>
       <listener-class>
        org.springframework.web.context.ContextLoaderListener
       </listener-class>
    </listener> -->
    <!-- OR USE THE CONTEXTLOADERSERVLET INSTEAD OF THE LISTENER -->
       <servlet>
       <servlet-name>context</servlet-name>
       <servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class>
       <load-on-startup>1</load-on-startup>
       </servlet>
      
    <servlet>
        <servlet-name>teamAction</servlet-name>
        <servlet-class>com.zd.action.teamAction</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>teamAction</servlet-name>
        <url-pattern>/servlet/teamAction</url-pattern>
    </servlet-mapping>
    <welcome-file-list>
       <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
    </web-app>
    =================================================
    teamAction
    package com.zd.action;
    import java.io.IOException;
    import java.io.PrintWriter;
    import javax.servlet.ServletContext;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import org.springframework.web.context.WebApplicationContext;
    import org.springframework.web.context.support.WebApplicationContextUtils;
    import com.zd.bean.Team;
    import com.zd.dao.ITeamDao;
    public class teamAction extends HttpServlet {
    /**
    * Constructor of the object.
    */
    public teamAction() {
       super();
    }
    
    private WebApplicationContext ctx;
    public WebApplicationContext getCtx() {
       return ctx;
    }
    
    public ITeamDao teamDao;
    /**
    * Destruction of the servlet. <br>
    */
    public void destroy() {
       super.destroy(); // Just puts "destroy" string in log
       // Put your code here
    }
    /**
    * The doGet method of the servlet. <br>
    *
    * This method is called when a form has its tag value method equals to get.
    * 
    * @param request the request send by the client to the server
    * @param response the response send by the server to the client
    * @throws ServletException if an error occurred
    * @throws IOException if an error occurred
    */
    public void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
       ServletContext servletContext = getServletContext();
         this.ctx = WebApplicationContextUtils.getRequiredWebApplicationContext(servletContext);
      
       teamDao = (ITeamDao) this.getCtx().getBean("teamDao");
       Team team = new Team();
       team.setName("Java Team");  
       teamDao.saveTeam(team);
       response.setContentType("text/html");
       PrintWriter out = response.getWriter();
       out
         .println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
       out.println("<HTML>");
       out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>");
       out.println(" <BODY>");
       out.print("    This is ");
       out.print(this.getClass());
       out.println(", using the GET method");
       out.println(" </BODY>");
       out.println("</HTML>");
       out.flush();
       out.close();
    }
    /**
    * The doPost method of the servlet. <br>
    *
    * This method is called when a form has its tag value method equals to post.
    * 
    * @param request the request send by the client to the server
    * @param response the response send by the server to the client
    * @throws ServletException if an error occurred
    * @throws IOException if an error occurred
    */
    public void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
       doGet(request,response);
    }
    /**
    * Initialization of the servlet. <br>
    *
    * @throws ServletException if an error occure
    */
    public void init() throws ServletException {
       // Put your code here
    }
    }
    ===============================
    package com.zd.dao;
    import com.zd.bean.Team;
    public interface ITeamDao {
    
    void saveTeam(Team team);
    
    Team getTeam(Integer id);
    
    void updateTeam(Team team);
    
    void deleteTeam(Integer id);
    }
    =======================================
    package com.zd.dao.impl;
    import java.util.List;
    import org.hibernate.SessionFactory;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    import org.springframework.orm.hibernate3.HibernateTemplate;
    import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
    import com.zd.bean.Team;
    import com.zd.dao.ITeamDao;
    public class TeamDao extends HibernateDaoSupport implements ITeamDao{
    public void deleteTeam(Integer id) {
       // TODO Auto-generated method stub
      
    }
    public Team getTeam(Integer id) {
       return (Team) this.getHibernateTemplate().get(Team.class, id);
    
    }
    public void saveTeam(Team team) {
       getHibernateTemplate().save(team);
      
    }
    public void updateTeam(Team team) {
       getHibernateTemplate().update(team);  
    }
    
    public static void main(String[] args) {
    //   ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
    //   SessionFactory sessionFactory = (SessionFactory) ctx.getBean("sessionFactory");
    //   HibernateTemplate hibernateTemplate = new HibernateTemplate(sessionFactory);
    //   List list = hibernateTemplate.find("from Team where id=1");
    //   Team t = (Team) list.get(0);
    //   System.out.println(t.getName());
      
    }
    
    }
  • 相关阅读:
    字符串与Unicode码的相互转换
    关于es6中的yield
    ajax请求中的6个全局事件
    用H5上传文件
    类型化数组
    git笔记-9-29
    js正则表达式验证身份证号和密码
    assertThat用法
    java产生随机数的几种方式
    jQuery之Deferred对象详解
  • 原文地址:https://www.cnblogs.com/Null2051/p/2712724.html
Copyright © 2011-2022 走看看