当前位置: 首页 > news >正文

上海做网站hlanggroup网上买保险网站

上海做网站hlanggroup,网上买保险网站,个人建立网站要多少钱,logo制作教程java中的jpaJPA代表Java Persistence API#xff0c;它基本上是一个规范#xff0c;描述了一种将数据持久存储到持久存储#xff08;通常是数据库#xff09;中的方法。 我们可以将其视为类似于Hibernate之类的ORM工具的东西#xff0c;除了它是Java EE规范的正式组成部分… java中的jpa JPA代表Java Persistence API它基本上是一个规范描述了一种将数据持久存储到持久存储通常是数据库中的方法。 我们可以将其视为类似于Hibernate之类的ORM工具的东西除了它是Java EE规范的正式组成部分并且Java SE也支持它。 有很多原因需要学习像JPA这样的ORM工具。 我不会详细介绍这个问题因为网络上已经有很多帖子可以完美地回答这个问题例如这个问题或这个问题 。 但是我们还应该记住 这不是解决所有问题的灵丹妙药 。 刚开始使用JPA时我很难设置它因为Web上的大多数文章都是针对Java EE环境编写的而我却试图在Java SE环境中使用它。 我希望本文对将来希望这样做的人有所帮助。 在此示例中我们将使用Maven设置所需的依赖关系。 由于JPA只是一个规范因此我们也需要一个实现。 JPA有许多不错的免费实现例如EclipseLinkHibernate等。 在本文中我选择使用Hibernate。 至于数据库我将使用MySQL。 让我们首先创建一个简单的Maven项目。 我已经从命令行使用快速入门原型创建了我的。 如果您不知道该怎么做可以按照本教程进行操作 。 好的接下来让我们获取JPA的依赖项。 在pom.xml中包括以下几行 dependencygroupIdjavax.persistence/groupIdartifactIdpersistence-api/artifactIdversion1.0.2/version /dependency dependencygroupIdorg.hibernate/groupIdartifactIdhibernate-entitymanager/artifactIdversion4.3.6.Final/versionexclusionsexclusiongroupIdorg.hibernate.javax.persistence/groupIdartifactIdhibernate-jpa-2.1-api/artifactId/exclusion/exclusions /dependency 第一个依赖关系指定标准的JPA接口第二个依赖关系指定实现。 以这种方式包含JPA依赖关系是可取的因为它使我们将​​来可以自由切换特定于供应商的实现而不会遇到太大问题 请参阅此处的详细信息 。 但是由于API版本1.0.2是作为独立JAR发布的最后一个版本因此我们将无法使用该API的最新版本。 在撰写本文时JPA规范的最新版本是2.1尚无法独立获得尽管有很多 要求 。 如果我们现在想使用那个那么我们唯一的选择是从特定于供应商的JAR中选择或者使用提供API及其实现的应用服务器。 我决定使用Hibernate提供的API规范。 在这种情况下仅包含以下依赖关系就足够了 dependencygroupIdorg.hibernate/groupIdartifactIdhibernate-entitymanager/artifactIdversion4.3.6.Final/version /dependency 下一步将包括对MySQL的依赖关系。 在pom.xml中包括以下几行 dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion5.1.31/version /dependency 包括其余依赖项即jUnitHamcrest等之后完整的pom.xml如下所示 project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.keertimaan.javasamples/groupIdartifactIdjpa-example/artifactIdversion0.0.1-SNAPSHOT/versionpackagingjar/packagingnamejpa-example/nameurlhttp://www.codesod.com/urlpropertiesjava.version1.8/java.versionhibernate.version4.3.6.Final/hibernate.versionproject.build.sourceEncodingUTF-8/project.build.sourceEncoding/propertiesdependencies!-- JPA --dependencygroupIdorg.hibernate/groupIdartifactIdhibernate-entitymanager/artifactIdversion${hibernate.version}/version/dependency!-- For connection pooling --dependencygroupIdorg.hibernate/groupIdartifactIdhibernate-c3p0/artifactIdversion${hibernate.version}/version/dependency!-- Database --dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion5.1.31/version/dependency!-- Test --dependencygroupIdjunit/groupIdartifactIdjunit/artifactIdversion4.11/versionscopetest/scopeexclusionsexclusiongroupIdorg.hamcrest/groupIdartifactIdhamcrest-core/artifactId/exclusion/exclusions/dependencydependencygroupIdorg.hamcrest/groupIdartifactIdhamcrest-all/artifactIdversion1.3/versionscopetest/scope/dependency/dependenciesbuildpluginsplugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-compiler-plugin/artifactIdversion2.5.1/versionconfigurationsource${java.version}/sourcetarget${java.version}/targetcompilerArgument-Xlint:all/compilerArgumentshowWarningstrue/showWarningsshowDeprecationtrue/showDeprecation/configuration/plugin/plugins/build /project 现在是时候配置我们的数据库了。 我将从这本出色的在线书中找到的所有将来的JPA示例中都将使用以下模式 数据库架构 在本地MySQL安装中按照上述模式创建一个等效的数据库。 下一步是创建persistence.xml文件该文件将包含我们的数据库特定信息供JPA使用。 默认情况下JPA希望此文件位于META-INF文件夹下的类路径中。 对于我们的Maven项目我已经在project_root / src / main / resources / META-INF文件夹下创建了此文件 persistence xmlnshttp://xmlns.jcp.org/xml/ns/persistence xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://xmlns.jcp.org/xml/ns/persistencehttp://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsdversion2.1persistence-unit namejpa-example transaction-typeRESOURCE_LOCALproviderorg.hibernate.jpa.HibernatePersistenceProvider/providerpropertiesproperty namejavax.persistence.jdbc.url valuejdbc:mysql://localhost/jpa_example /property namejavax.persistence.jdbc.user valueroot /property namejavax.persistence.jdbc.password valuemy_root_password /property namejavax.persistence.jdbc.driver valuecom.mysql.jdbc.Driver /property namehibernate.show_sql valuetrue /property namehibernate.format_sql valuetrue /property namehibernate.dialect valueorg.hibernate.dialect.MySQL5InnoDBDialect /property namehibernate.hbm2ddl.auto valuevalidate /!-- Configuring Connection Pool --property namehibernate.c3p0.min_size value5 /property namehibernate.c3p0.max_size value20 /property namehibernate.c3p0.timeout value500 /property namehibernate.c3p0.max_statements value50 /property namehibernate.c3p0.idle_test_period value2000 //properties/persistence-unit /persistence 如果您绝对是JPA的初学者则上面的文件需要一些解释。 在我的下一篇文章中我将尽可能地解释它但是对于运行此示例您只需更改前三个属性值以匹配您的环境即数据库名称用户名和密码即可。 还要记下持久性单元元素的name属性的值。 此值稍后将在代码中用于实例化EntityManagerFactory实例。 好的现在让我们创建一个实体来测试我们的配置。 创建一个名为Address的类其中包含以下内容 import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.Table;Entity Table(name address) public class Address {IdGeneratedValueprivate Integer id;private String street;private String city;private String province;private String country;private String postcode;/*** return the id*/public Integer getId() {return id;}/*** param id the id to set*/public Address setId(Integer id) {this.id id;return this;}/*** return the street*/public String getStreet() {return street;}/*** param street the street to set*/public Address setStreet(String street) {this.street street;return this;}/*** return the city*/public String getCity() {return city;}/*** param city the city to set*/public Address setCity(String city) {this.city city;return this;}/*** return the province*/public String getProvince() {return province;}/*** param province the province to set*/public Address setProvince(String province) {this.province province;return this;}/*** return the country*/public String getCountry() {return country;}/*** param country the country to set*/public Address setCountry(String country) {this.country country;return this;}/*** return the postcode*/public String getPostcode() {return postcode;}/*** param postcode the postcode to set*/public Address setPostcode(String postcode) {this.postcode postcode;return this;} } 此类已正确映射到地址表并且其实例已准备就绪可以持久存储在数据库中。 现在让我们创建一个名为PersistenceManager的帮助程序类其中包含以下内容 import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.Persistence;public enum PersistenceManager {INSTANCE;private EntityManagerFactory emFactory;private PersistenceManager() {// jpa-example was the value of the name attribute of the// persistence-unit element.emFactory Persistence.createEntityManagerFactory(jpa-example);}public EntityManager getEntityManager() {return emFactory.createEntityManager();}public void close() {emFactory.close();} } 现在让我们在Main方法中编写一些示例持久性代码以测试所有内容 import javax.persistence.EntityManager;public class Main {public static void main(String[] args) {Address address new Address();address.setCity(Dhaka).setCountry(Bangladesh).setPostcode(1000).setStreet(Poribagh);EntityManager em PersistenceManager.INSTANCE.getEntityManager();em.getTransaction().begin();em.persist(address);em.getTransaction().commit();em.close();PersistenceManager.INSTANCE.close();} } 如果检查数据库则会看到新记录已插入地址表中。 本文介绍了如何在不使用Spring之类的其他框架的情况下设置JPA。 但是使用Spring设置JPA是一个非常好的主意因为在这种情况下我们无需担心管理实体经理交易等问题。除了设置JPA之外Spring 对于许多其他目的也非常有用。 今天就这样。 在下一篇文章中我将尝试解释persistence.xml文件和相应的配置值。 敬请关注 完整的代码可以在github上找到。 翻译自: https://www.javacodegeeks.com/2014/08/jpa-tutorial-setting-up-jpa-in-a-java-se-environment.htmljava中的jpa
http://www.sadfv.cn/news/365981/

相关文章:

  • 在网络上做兼职的网站建筑图纸
  • 邯郸网站建设邯郸网站制作深圳网站建设 设计贝尔利
  • 网站做外链是什么意思网络营销的主要特点
  • 云南微网站建设免费推广引流平台
  • 郑州汉狮专业做网站公司网站运营每天做啥工作
  • 企业建站系统价格建设招标网是什么网站
  • 深圳网站建设哪家口碑好小程序爱成毅的微博
  • 湖北商城网站建设建设工程协会网站
  • 如何给网站做备案注册一个公司全部流程
  • 大连网站建设#选领超科技博客内容跟网站相关吗
  • 网站建设怎么做帐做网站都需要什么资料
  • 苏州网站建设网络国外免费域名注册平台
  • xp 做网站服务器吗校园网站建设管理制度
  • 本人承接网站建设wordpress仿站难吗
  • 六安网站制作费用多少网站转化率
  • 网站备案为什么 没有批复文件一下成都网站建设公司
  • 里水九江网站建设wordpress模板 单栏
  • 门户网站建设公司流程免费域名网站哪个最好
  • 服务器网站崩溃网页升级紧急通知91
  • 90设计手机站html5微网站开发教程
  • 自己建设网站模版天津seo管理平台
  • 营销型网站建设设计服务flash网站代码下载
  • 手机的网站建设目标昆山高端网站设计公司
  • 互联网大赛建设网站策划书泉州网站优化排名
  • 宁夏住宅建设发展公司网站免费ppt模板资源
  • 微信对接网站群网站建设风格要求
  • 河北省建设厅网站官网业务系统使用WordPress做论坛
  • 现在做网站建设的公司多么wordpress 分类不显示图片
  • 什么叫网站收录吉林网站建设企业
  • 浙江网站建设制作石家庄的网站的公司