JPA+mysql+servlet实现的连接操作数据库的小例子

persistence.xml:

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
    http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">
    
	<persistence-unit name="mysql" transaction-type="RESOURCE_LOCAL">
		<provider>org.hibernate.ejb.HibernatePersistence</provider>
  		
  		<jta-data-source>java:comp/env/jdbc/mysql</jta-data-source>
  		
  		<class>com.chinasoft.database2.Persion</class>
 
  		<properties>
			<property name="hibernate.show_sql" value="true"></property>
	  	</properties>
	</persistence-unit>
  
</persistence>

 tomcat中server.xml配置:

  <Context path="/DatabaseTest" docBase="/DatabaseTest"  reloadable="false" crossContext="true">		 
		<Resource name="jdbc/mysql"   auth="Container"  type="javax.sql.DataSource"  
		maxActive="5"   maxIdle="2"   maxWait="10000"   removeAbandoned="true" removeAbandonedTimeout="60" logAbandoned="true" 
		driverClassName="com.mysql.jdbc.Driver" 
		url="jdbc:mysql://localhost/lpm?user=root&amp;password=" /> 
 </Context>

 建一个实体Persion类:

package com.chinasoft.database2;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name="persion")
public class Persion {
	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	private java.lang.Long userid;
    private java.lang.String name;
   
   
	public java.lang.Long getUserid() {
		return userid;
	}
	public void setUserid(java.lang.Long userid) {
		this.userid = userid;
	}
	public java.lang.String getName() {
		return name;
	}
	public void setName(java.lang.String name) {
		this.name = name;
	}
	
}

 建一个servlet类:

public class Start extends HttpServlet {

	 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
   EntityManagerFactory entityfactory = null;
   EntityTransaction  t=null;
   EntityManager em=null;
  try{
   entityfactory = Persistence.createEntityManagerFactory("mysql");
   em=entityfactory.createEntityManager();
   
   Query query=em.createQuery("from Persion");
   List list=query.getResultList();
   Iterator iter=list.iterator();
   while(iter.hasNext()){
    Persion persion=(Persion) iter.next();
    System.out.println(persion.getName());
   }
   
   
      t=em.getTransaction();
   t.begin();
   Persion p=new Persion();
   p.setName("abc");
   em.persist(p);
   t.commit();
  }catch(Exception e){
   e.printStackTrace();
   t.rollback();
  }
  em.close();
  entityfactory.close();
 }

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值