方式1:假设Bean的属性xxx为主键,则在getXxx() 前添加以下注解
@Id
@SequenceGenerator(name="名称A", sequenceName="库中已存在的sequence名称",allocationSize=递增值)
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="名称A")
方式2:假设Bean的属性xxx为主键,则在getXxx() 前添加以下注解
@Id
@TableGenerator(name="名称A",allocationSize=递增值)//若不指定递增值,则生成的主键值不一定连续
@GeneratedValue(strategy=GenerationType.TABLE, generator="名称A")
总结:方式1:针对Oracle效率略高,但需要手工创建sequence才能使用。
方式2:不依赖数据库,可移植性好,但相比方式1,效率略低。
选择开始菜单中→程序→【Management SQL Server 2008】→【SQL Server Management Studio】命令,打开【SQL Server Management Studio】窗口,并使用Windows或 SQL Server身份验证建立连接。在【对象资源管理器】窗口中展开服务器,然后选择【数据库】节点
右键单击【数据库】节点,从d出来的快捷菜单中选择【新建数据库】命令。
执行上述 *** 作后,会d出【新建数据库】对话框。在对话框、左侧有3个选项,分别是【常规】、【选项】和【文件组】。完成这三个选项中的设置会后,就完成了数据库的创建工作,
在【数据库名称】文本框中输入要新建数据库的名称。例如,这里以“新建的数据库”。
在【所有者】文本框中输入新建数据库的所有者,如sa。根据数据库的使用情况,选择启用或者禁用【使用全文索引】复选框。
在【数据库文件】列表中包括两行,一行是数据库文件,而另一行是日记文件。通过单击下面的【添加】、【删除】按钮添加或删除数据库文件。
切换到【选项页】、在这里可以设置数据库的排序规则、恢复模式、兼容级别和其他属性。
切换到【文件组】页,在这里可以添加或删除文件组。
完成以上 *** 作后,单击【确定】按钮关闭【新建数据库】对话框。至此“新建的数据”数据库创建成功。新建的数据库可以再【对象资源管理器】窗口看到。
即使数据库表中的记录为空,jpa查询的结果也不是null,而是一个List列表对象数为空的列表。你之所以查询结果为空,是因为使用hibernate(如果你是用hibernate作为jpa的实现框架的话)创建的service对象没有创建的缘故。为什么没有创建,请粘贴源代码分析一下。
很简单的道理,你的service这个对象没有初始化,或者叫没有创建。因为没有创建这个对象,所以也就没法调用find()这个方法,所以会抛出空指针异常,之所以model==null可以,是因为server.find()当对象没有创建的的时候就是空null,所以可以。
你的任务是,初始化service这个对象。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)