`
85977328
  • 浏览: 1899712 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

openJPA1.2.2使用Tomcat6.0.29数据源

阅读更多
Tomcat6.0.29的数据源有2种

1. System wide:在tomcat里的所有webapp都可以使用
    全局的数据源,要配置 %TOMCAT_HOME%/conf/context.xml,同时要把数据库的jdbc驱动,拷贝到%TOMCAT_HOME%/lib下面.
2. WebApplication wide:只有指定的webapp可以使用
    web应用数据源,要配置 你的项目下的 META-INF/context.xml,同时拷贝到驱动到项目下的WEB-INF/lib下
  
下面是具体的配置文件,不做过多的解释(2种方式)
persistence.xml
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0"
	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">
	<persistence-unit name="MyJPA" transaction-type="RESOURCE_LOCAL">
		<description>测试openjpa</description>
		<provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>
		<non-jta-data-source>java:comp/env/jdbc/net</non-jta-data-source>
		<class>entity.Animal</class>
	</persistence-unit>
</persistence>
<!--
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0"
	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">
	<persistence-unit name="MyJPA" transaction-type="RESOURCE_LOCAL">
		<description>测试openjpa</description>
		<provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>
		<class>entity.Animal</class>
		<properties>
			<property name="openjpa.jdbc.DBDictionary" value="mysql" />
			<property name="openjpa.ConnectionFactoryName" value="java:comp/env/jdbc/MyDataSource" />
			<property name="openjpa.Log" value="log4j" />
		</properties>
	</persistence-unit>
</persistence>
-->

context.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context>
    <Resource  
	name="jdbc/net" 
	type="javax.sql.DataSource" 
	maxActive="5" 
	maxIdle="5"  
	maxWait="5000" 
	username="root"  
	password="root"  
	driverClassName="com.mysql.jdbc.Driver"  
	url="jdbc:mysql://192.168.64.2/test" 
/>
</Context>

Index.jsp----其中,前半部分为测试访问jndi数据源代码,后半部分为使用jpa的代码
<%@ page language="java" contentType="text/html; charset=utf8"
	pageEncoding="utf8"%>
<%@ page import="java.util.*"%>
<%@ page import="javax.persistence.*"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>

<%@ page import="entity.*"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf8">
<title>Insert title here</title>
</head>
<body>
<%!
	final String JNDINAME = "java:comp/env/jdbc/net" ;
%>
<%
Connection conn = null ;
try
{
	Context ctx = new InitialContext() ;
	DataSource ds = (DataSource)ctx.lookup(JNDINAME) ;
	conn = ds.getConnection() ;
}
catch(Exception e)
{
	System.out.println(e) ;
}
out.write(conn.toString());
conn.close() ;



	EntityManagerFactory emf = Persistence.createEntityManagerFactory("MyJPA");
	EntityManager em = emf.createEntityManager();
	Query query = em.createQuery("select a from Animal a");
	List<Animal> results = query.getResultList();
	for (int i =0;i<results.size();i++) {
		Animal animal = results.get(i);
		out.write(animal.getName()+"<br/>");
	}
%>
</body>
</html>
0
1
分享到:
评论

相关推荐

    使用springboot + JPA / MyBatis 实现多数据源动态切换

    本教程将详细讲解如何使用Spring Boot结合JPA或MyBatis框架实现多数据源的动态切换。 **一、Spring Boot与JPA** 1. **Spring Boot简介**:Spring Boot是Spring Framework的一个模块,旨在简化Spring应用的初始搭建...

    openjpa 写的一个例子

    5. **配置文件**:在`persistence.xml`文件中配置OpenJPA,包括数据源、实体管理工厂、实体类等信息。 6. **Web层**:创建Servlet或Controller(如`UserServlet.java`)来处理HTTP请求,调用DAO层的方法进行业务...

    openjpa范例及实例工程

    OpenJPA 框架从数据库中一次性获取 50 个连续的实体标识缓存起来,当下一次应用程序需要获取实体标识时,OpenJPA 将首先检测缓存中是否存在实体标识,如果存在,OpenJPA 将直接使用缓存中的实体标识,如果不存在,...

    Spring和openJPA集成

    然后,在Spring的配置文件(如applicationContext.xml)中声明OpenJPA的数据源、实体管理和事务管理器。 2. **实体类定义** 定义与数据库表对应的Java实体类,使用JPA的注解如@Entity、@Table、@Id等来描述实体...

    openJpa的应用,感觉还可以

    1. **配置OpenJPA**:这通常涉及到在应用程序的配置文件(如persistence.xml)中设置数据源、实体管理工厂、缓存策略等参数。 2. **实体类设计**:学习如何使用Java注解(如@Entity、@Table、@Id等)来定义数据库表...

    openjpa 源码 下载 帮助开发人员调试

    1. **对象关系映射(ORM)**:OpenJPA将Java对象模型与数据库表之间的映射关系进行管理,使得开发者可以使用面向对象的方式处理数据,无需关心底层的SQL语句。 2. **实体管理**:OpenJPA提供了Entity Manager,它是...

    Spring中使用OpenJPA

    2. **配置OpenJPA**:在Spring的配置文件(如`applicationContext.xml`)中,你需要配置OpenJPA的数据源、实体扫描路径以及JPA的属性: ```xml &lt;!-- 数据库连接配置 --&gt; ...

    OpenJPA 2.2.1 API (CHM格式)

     OpenJPA 是 Apache 组织提供的开源项目,它实现了 EJB 3.0 中的 JPA 标准,为开发者提供功能强大、使用简单的持久化数据管理框架。OpenJPA 封装了和关系型数据库交互的操作,让开发者把注意力集中在编写业务逻辑上...

    openjpa jar

    5. **元数据源**:OpenJPA可以从多种来源读取元数据,包括注解、XML配置文件、库扫描等。这为灵活的配置提供了可能,开发者可以根据项目需求选择最适合的元数据源。 6. **性能优化**:OpenJPA提供了多种性能优化...

    Open JPA2 employee 简单例子

    在这个“Open JPA2 employee简单例子”中,我们将深入理解如何使用OpenJPA2来处理数据库中的员工数据。这个示例将帮助初学者掌握基本的JPA概念和OpenJPA2的用法。 首先,我们需要了解JPA的核心概念。JPA允许开发者...

    jsf、openJpa学习

    这通常包括配置OpenJPA的数据源、实体管理器工厂,以及在JSF Managed Beans中注入实体管理器,以便在处理用户请求时执行CRUD操作。JSF的事件驱动机制可以与OpenJPA的事务管理相结合,确保数据的一致性。 **JSF与...

    Spring Boot使用spring-data-jpa配置Mysql多数据源

    在Spring Boot应用中,使用`spring-data-jpa`来配置MySQL多数据源是一项常见的需求,尤其是在构建大型分布式系统时,为了实现数据隔离、负载均衡或读写分离等目的。本教程将详细介绍如何在Spring Boot项目中配置多个...

    openjpa-1.1.0.jar

    apache的jpa,版本是1.1.0的,apache主页上能找的到

    openjpa-1.2.2.jar

    OpenJPA聚合罐 org.apache.openjpa/openjpa/1.2.2/openjpa-1.2.2.jar

    Spring MVC+OpenJPA框架

    首先,需要在Spring配置中定义数据源、OpenJPA实体管理和事务管理器。然后,通过@Autowired注解将实体管理器注入到需要的地方,如服务层。这样,我们就可以在控制器中直接调用服务层的方法,进行CRUD操作,OpenJPA会...

    通过 WebSphere Application Server V6.1 利用 OpenJPA

    本篇将深入探讨如何在WebSphere Application Server V6.1中利用OpenJPA(Open Source Java Persistence API)进行数据持久化操作。OpenJPA是一个开源的Java持久层框架,它实现了Java Persistence API(JPA),为开发...

    openJPA官方手册

    综上所述,OpenJPA官方手册详细介绍了使用OpenJPA进行数据持久化的各个方面,包括基本概念、配置、实体管理、查询等方面的知识点。这对于希望深入了解和掌握OpenJPA技术的开发人员来说是一份宝贵的资源。

    easybeans-jpa-default-openjpa-1.2.2.jar

    jar包,官方版本,自测可用

Global site tag (gtag.js) - Google Analytics