- 浏览: 450411 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (377)
- Java (66)
- C++ (0)
- VC++ (0)
- .net (1)
- css (36)
- 数据库 (22)
- html (2)
- extjs (1)
- jpbm (0)
- javascript (31)
- 物资管理 (1)
- java基础 (5)
- C# (0)
- Android (56)
- window service (1)
- 其他 (2)
- Web服务器 (7)
- jbpm (1)
- eclipse (2)
- tomcat (3)
- java字符串与二进制的相互转化 (1)
- Oracle 数据库 (6)
- FreeMarker (8)
- 浏览器 (1)
- php (1)
- photoshop (6)
- spring (4)
- spring mvc (2)
- Acegi (1)
- webStorm 3.0 (4)
- Mongodb (8)
- mysql (9)
- 软件开发:需求分析 (1)
- 把Java程序作为Windows系统服务 (1)
- nodejs (4)
- json (1)
- 缓存 (1)
- J2ee (2)
- Flash报表 (1)
- MyEclipse+Maven+Tomcat (11)
- 生活 (1)
- Ubuntu (1)
- Bootstrap (1)
- jquery easy ui (2)
- 敏捷开发 (1)
- phone gap (1)
- rest (1)
- 移动开发 (22)
- Redis + Jedis + Spring (3)
- anroid (7)
- grunt 教程 (7)
- PhoneGap (2)
- sublime text (7)
- mariadb (1)
- linux (1)
- maven (2)
- jquery (1)
- ActiveMQ (1)
- LVS Nginx (1)
- nginx (6)
- ngnix (1)
- 爱因斯坦 (1)
- 天干地支 (1)
最新评论
-
muqingren:
...
Maven多模块布局实例详解 -
shutear:
解决了我的难题,谢谢分享!
Unable to load configuration. - action - file:/D:/studytool/apache-tomcat-6.0.16 -
702346318:
[img][/img][flash=200,200][/fla ...
CAS单点登录完整教程(上)【转】 -
liuguofeng:
PersonS631887934 写道学习中。。 有个问题想请 ...
js constructor属性 -
S631887934:
学习中。。 有个问题想请教楼主为什么要加上Person.pro ...
js constructor属性
本文以一个jboss_hibernate为例介绍怎么把hibernate部署成一个jboss的service,然后用hibernate 去操作数据库。
配置开发环境
在进行开发之前,需要首先获得JBoss、MySQL、相应数据库的JDBC驱动类库。JBoss可以从www.jboss.org中下载,MySQL 从www.mysql.org 下载
解压jboss到一个文件夹,我们把mysql的jdbc驱动复制到jboss-4.2.0.CR1\server\default\lib下
然后我们配置一个mysql的数据源,从jboss-4.2.0.CR1\docs\examples\jca目录下复制一份mysql-ds.xml到jboss-4.2.0.CR1\server\default\deploy目录下,接着修改它的内容,我修改的如下:
- <?xml version="1.0" encoding="UTF-8"?>
- <datasources>
- <local-tx-datasource>
- <jndi-name>MySqlDS</jndi-name> //jndi名字
- <use-java-context>false</use-java-context>
- <connection-url>jdbc:mysql://10.16.175.137:3306/test</connection-url> //URL地址
- <driver-class>com.mysql.jdbc.Driver</driver-class> //驱动
- <user-name>root</user-name> //用户名
- <password>123456</password> //密码
- <exception-sorter-class-name>
- org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter
- </exception-sorter-class-name>
- <metadata>
- <type-mapping>mySQL</type-mapping>
- </metadata>
- </local-tx-datasource>
- </datasources>
<?xml version="1.0" encoding="UTF-8"?> <datasources> <local-tx-datasource> <jndi-name>MySqlDS</jndi-name> //jndi名字 <use-java-context>false</use-java-context> <connection-url>jdbc:mysql://10.16.175.137:3306/test</connection-url> //URL地址 <driver-class>com.mysql.jdbc.Driver</driver-class> //驱动 <user-name>root</user-name> //用户名 <password>123456</password> //密码 <exception-sorter-class-name> org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter </exception-sorter-class-name> <metadata> <type-mapping>mySQL</type-mapping> </metadata> </local-tx-datasource> </datasources>
这样我们的mysql数据源就配置好了,接下来我们来做一个jboss_hibernate.har文件
进入到jboss-4.2.0.CR1\jboss-4.2.0.CR1\server\default\deploy 新建一个jboss_hibernate.har文件夹,该目录下放的将是你的POJO 文件和对应的.hbm.xml文件以及jboss-service.xml文件。
在jboss_hibernate.har目录新建一个文件夹META-INF,在该目录下我们来写一个jboss-service.xml文件,代码如下:
- <?xml version="1.0" encoding="UTF-8"?>
- <server>
- <mbean code="org.jboss.hibernate.jmx.Hibernate" name="jboss.har:service=Hibernate">
- <attribute name="DatasourceName">MySqlDS</attribute> //数据源名字
- <attribute name="Dialect">org.hibernate.dialect.MySQLDialect</attribute> //对应hibernate的Dialect
- <attribute name="SessionFactoryName">java:/hibernate/SessionFactory</attribute> //sessionFactory的jndi名字
- <attribute name="ShowSqlEnabled">true</attribute> //在控制台输出sql语句
- <attribute name="ScanForMappingsEnabled">true</attribute> //自动搜索mapping文件
- </mbean>
- </server>
<?xml version="1.0" encoding="UTF-8"?> <server> <mbean code="org.jboss.hibernate.jmx.Hibernate" name="jboss.har:service=Hibernate"> <attribute name="DatasourceName">MySqlDS</attribute> //数据源名字 <attribute name="Dialect">org.hibernate.dialect.MySQLDialect</attribute> //对应hibernate的Dialect <attribute name="SessionFactoryName">java:/hibernate/SessionFactory</attribute> //sessionFactory的jndi名字 <attribute name="ShowSqlEnabled">true</attribute> //在控制台输出sql语句 <attribute name="ScanForMappingsEnabled">true</attribute> //自动搜索mapping文件 </mbean> </server>
如果有多个数据库,你可以建多个数据源,然后在jboss-service.xml文件里写上多个mbean,我是这样做的,呵呵,不知道有没有更好的办法
接着我们来写我们的hibernate 文件
在jboss-4.2.0.CR1\jboss-4.2.0.CR1\server\default\deploy\jboss_hibernae.har\目录下新建文件夹org.xredleaf,我们写一个对应数据库的User.java文件:
- package org.xredleaf;
- import java.io.Serializable;
- public class User implements Serializable
- {
- private String id;
- private String name;
- private int age;
- public User(){
- }
- public void setId(String id){
- this.id=id;
- }
- public String getId(){
- return id;
- }
- public void setName(String name){
- this.name=name;
- }
- public String getName(){
- return name;
- }
- public void setAge(int age){
- this.age=age;
- }
- public int getAge(){
- return age;
- }
- }
package org.xredleaf; import java.io.Serializable; public class User implements Serializable { private String id; private String name; private int age; public User(){ } public void setId(String id){ this.id=id; } public String getId(){ return id; } public void setName(String name){ this.name=name; } public String getName(){ return name; } public void setAge(int age){ this.age=age; } public int getAge(){ return age; } }
然后将它编译成User.class文件
接着我们写XML映射文件User.hbm.xml 文件:
- <?xml version='1.0' encoding='utf-8'?>
- <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
- <hibernate-mapping>
- <class name="org.xredleaf.User" table="user" >
- <id name="id" column="id" type="java.lang.String" >
- <generator class="uuid.hex"/>
- </id>
- <property name="name" column="name" type="java.lang.String" />
- <property name="age" column="age" type="java.lang.Integer" />
- </class>
- </hibernate-mapping>
<?xml version='1.0' encoding='utf-8'?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="org.xredleaf.User" table="user" > <id name="id" column="id" type="java.lang.String" > <generator class="uuid.hex"/> </id> <property name="name" column="name" type="java.lang.String" /> <property name="age" column="age" type="java.lang.Integer" /> </class> </hibernate-mapping>
好了,这样我们的环境就搭好了!呵呵,喝口茶!
二、写一个登录页面
进入到jboss-4.2.0.CR1\server\default\deploy\jboss-web.deployer\ROOT.war目录下,新建一个login.jsp,文件如下:
- <%@page contentType="text/html;charset=GB2312" %>
- <%
- javax.naming.InitialContext ctx = new javax.naming.InitialContext();
- org.hibernate.SessionFactory factory = (org.hibernate.SessionFactory)ctx.lookup("java:/hibernate/SessionFactory"); //之前配置的sessionFactory的名字
- org.hibernate.Session se = factory.openSession();
- org.hibernate.Query query=se.createQuery("from org.xredleaf.User user where user.id='111' ");
- java.util.List results=query.list();
- java.util.ListIterator iterator=results.listIterator();
- if(iterator.hasNext()){
- org.xredleaf.User user=(org.xredleaf.User)iterator.next();
- session.setAttribute("user",user);
- out.print("Login success");
- }
- %>
<%@page contentType="text/html;charset=GB2312" %> <% javax.naming.InitialContext ctx = new javax.naming.InitialContext(); org.hibernate.SessionFactory factory = (org.hibernate.SessionFactory)ctx.lookup("java:/hibernate/SessionFactory"); //之前配置的sessionFactory的名字 org.hibernate.Session se = factory.openSession(); org.hibernate.Query query=se.createQuery("from org.xredleaf.User user where user.id='111' "); java.util.List results=query.list(); java.util.ListIterator iterator=results.listIterator(); if(iterator.hasNext()){ org.xredleaf.User user=(org.xredleaf.User)iterator.next(); session.setAttribute("user",user); out.print("Login success"); } %>
好了大功告成,我们来启动一下jboss,运行run.bat
打开http://localhost:8080/login.jsp看一下,是不是显示Login success 啊
发表评论
-
非对称加密算法-DH算法
2014-11-04 10:53 1458http://blog.csdn.net/kongqz/a ... -
非对称加密算法-RSA算法
2014-11-04 10:52 982一、概述 1、RSA是基于大数因子分解难题。目前各种主流 ... -
OAuth的机制原理讲解及开发流程
2014-11-04 10:01 791本想前段时间就把自己通过QQ OAuth1.0、OAuth2 ... -
FindBugs规则整理
2014-10-30 12:46 1939http://blog.csdn.net/jdsjlzx/a ... -
Java网络编程——远程通讯可选技术及原理
2014-10-28 17:40 648(此文系转载,具体出 ... -
UML类图几种关系的总结
2014-10-25 18:13 702在UML类图中,常见的有以下几种关系: 泛化(Gene ... -
关联、组合、聚合、依赖关系比较
2014-10-25 17:06 639类之间的关系种类: Generalization(泛化), ... -
组合,聚合,关联,依赖 的区别
2014-10-25 12:37 760依赖与关联 依赖(Depen ... -
设计指导原则
2014-10-18 15:38 816http://www.cnblogs.com/netfocu ... -
Java缩略图生成库之Thumbnailator应用说明
2014-10-12 18:17 747Thumbnailator 是一个为Java界面更流畅的缩略 ... -
spring mvc 使用jcrop进行头像剪切
2014-10-12 17:33 1450源码下载地址:http://download.csdn.n ... -
Lucene / Solr 开发经验
2014-10-08 22:06 900转自 Lucene/Solr开发经 ... -
高并发量网站解决方案
2014-10-08 22:03 713一个小型的网站,可以使用最简单的html静态页面就实现了,配 ... -
response.setHeader()的用法
2014-08-04 11:35 680response.setHeader()的用 ... -
iBatis整理——Spring环境下批处理实现
2014-07-09 11:09 425http://snowolf.iteye.com/blog/ ... -
Java NIO系列教程(八) SocketChannel
2014-09-14 11:06 539原文链接 作者:Jakob Jenkov ... -
Java NIO系列教程(七) FileChannel
2014-07-06 17:54 0原文链接 作者:Jakob Jenkov 译 ... -
Java NIO系列教程(六) Selector
2014-07-06 17:53 0原文链接 作者:Jakob Jenkov 译者:浪迹v 校对 ... -
Java NIO系列教程(五) 通道之间的数据传输
2014-07-06 17:53 0原文地址:http://tutorials.jenkov. ... -
Java NIO系列教程(四) Scatter/Gather
2014-07-06 17:52 431Java NIO开始支持scatter/gather,sca ...
相关推荐
通过上述详细的介绍和分析,我们可以看出,将Jboss Cache与Hibernate相结合,不仅能够显著提高数据访问的速度,还能够通过合理的配置和优化,更好地适应各种应用场景的需求。这对于开发高性能、高可用性的企业级应用...
《Hibernate二级缓存:JBoss Caching配置与注意事项详解》 在Java的持久化框架Hibernate中,二级缓存是提高应用程序性能的重要手段。它能够存储已经加载过的对象,避免重复查询数据库,从而显著减少数据库访问次数...
总结,配置JBoss 6.0.0 M4中的JNDI和Hibernate,涉及到了数据源的创建、Hibernate的配置以及如何在应用程序中使用这些配置。理解并掌握这些知识点对于构建基于Java EE的分布式企业应用至关重要。通过合理配置,我们...
2. **创建Hibernate配置** - 编写`hibernate.cfg.xml`配置文件,配置数据库连接信息、方言、缓存等。 - 创建实体类,并使用Hibernate注解(@Entity, @Table等)定义其与数据库表的关系。 3. **编写EJB** - 创建...
一、Hibernate配置文件 1. hibernate.cfg.xml:这是Hibernate的核心配置文件,用于定义数据源、持久化类、SessionFactory等相关设置。例如,你需要在其中指定数据库连接的URL、用户名、密码,以及JDBC驱动等信息。...
### Hibernate配置数据源详解 #### 一、引言 在软件开发过程中,特别是涉及大量数据库交互的应用场景下,选择合适的数据源配置对于提高系统性能、稳定性具有重要意义。Hibernate作为Java领域内广泛使用的对象关系...
2. JBoss应用服务器的安装与配置 3. Maven或Gradle项目配置 4. 注解驱动的实体Bean开发 5. 数据库关系映射 6. EJB本地接口与业务方法 7. JPA和数据源配置 8. 部署与管理 以上就是在JBoss下开发EJB应用,特别是实体...
- **Hibernate Tools**:这是一个非常有用的插件,它可以为Eclipse IDE提供额外的功能,包括自动生成Hibernate配置文件、代码生成等。具体安装步骤如下: - 打开Eclipse,然后点击“Help”菜单下的“Eclipse ...
- `jbpm.hibernate.cfg.xml`: 如果涉及Hibernate,这个文件可能是Hibernate的配置,确保数据库连接信息、缓存设置等与JBoss环境相匹配。 最后,运行`JBOSS_HOME\bin\run.bat`启动JBoss服务器。启动成功后,你可以...
JBoss 内置了 Hibernate ORM 工具,支持 JPA 规范,简化了数据库的交互,提供了数据的持久化能力。 8. **缓存** 使用 Infinispan,JBoss 提供了高性能的内存数据网格,可用于缓存和分布式计算。 9. **开发工具...
**Hibernate** 是一个流行的ORM(Object-Relational Mapping)框架,它简化了Java应用与数据库之间的交互。在Spring框架中,Hibernate可以作为数据访问层,通过HQL(Hibernate Query Language)或者SQL语句操作...
它详细描述了JBoss EAP 5中Hibernate EntityManager的配置和使用方法,以及与Java EE容器的集成方式。 根据文档中提供的部分内容,我们可以推断出以下知识点: 1. 文档的法律声明部分提到,文档的内容和插图使用的...
2. 持久化:通过`@Entity`注解,EJB3.0提供了更直观的持久化模型,支持JPA(Java Persistence API),并与Hibernate等ORM框架集成。 3. 自动事务管理:EJB容器自动处理事务,开发者无需关心底层的事务控制。 4. 无...
这个压缩包提供了完整运行Hibernate 3.3.2所需的环境,包括了所有必需的库文件和预配置的配置文件,使得开发者可以快速搭建起一个能够与数据库交互的Java应用程序。通过理解和配置`hibernate.cfg.xml`文件,开发者...
《精通JBoss——EJB与Web Services开发精解》是一本深入探讨企业级Java应用开发的专业书籍,专注于JBoss应用服务器的使用以及EJB(Enterprise JavaBeans)和Web Services的集成开发。本书旨在帮助读者全面掌握如何在...
2. **JBoss的安装与配置** - **下载与解压**:从官方网站获取最新版本的JBoss AS或WildFly(JBoss的新版本),解压缩到指定目录。 - **配置环境变量**:设置JAVA_HOME指向JDK安装路径,将JBoss的bin目录添加到PATH...