SSH框架中 自动根据HBM.XML文件生成表结构,comment乱码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSH框架中 自动根据HBM.XML文件生成表结构,comment乱码相关的知识,希望对你有一定的参考价值。

请问大家,在SSH框架中,我写好了Hbm.xml文件,例如
<property name="gxsj" type="java.util.Date">
<column name="gxsj">
<comment>更新时间</comment>
</column>
</property>
自动生成表结构后,但是表的字段注释都成乱码了,应该怎样解决呢?
注:数据库用的是ORACLE,如果手动创建表,和添加注释都是正常的,自动生成就是乱码了,主要是表字段的注释是乱码,求解。

参考技术A public static void main(String[] args)
BeanFactory bf = new ClassPathXmlApplicationContext("applicationContext-*.xml");

LocalSessionFactoryBean lsfb = (LocalSessionFactoryBean) bf.getBean("&sessionFactory");

lsfb.dropDatabaseSchema();

lsfb.createDatabaseSchema();



还可以通过配置spring配置文件实现,上面是代码实现!~ 如下
<prop key="hibernate.hbm2ddl.auto">update</prop> 也可用create。这个配置在sessionFactory的bean中!~追问

不是怎样生成,是生成后数据库里表的字段的注释如果是中文,那么就是乱码。

利用HibernateTools从数据库表生成带注解的POJO

引用:http://www.cnblogs.com/mingziday/p/4475124.html

 

在SSH框架中,如果先设计好了数据库,那么下一步就需要从数据库Table生成实体java类和hbm.xml配置文件。在最新的开发框架中,已经支持使用注解,从而避免了繁琐的hbm.xml配置,而且我们可以借助HibernateTools工具完成从Table到实体Java类的转换。

1、首先把HibernateTools插件安装到Eclipse上

打开Eclispe,按照如下操作完成插件安装

Help > Install New Software… > Work with:
http://download.jboss.org/jbosstools/updates/stable/luna/

2、插件安装成功后,先新建一个hibernate.cfg.xml配置文件,该文件配置了一些链接数据库的设定,可以帮助Eclipse链接你的数据库表

点击Add Configuration

在弹出的配置框中选择Project、Hibernate版本、点击Configuraton file后面的setup

在Configuration file setup的界面中配置你的数据库链接参数,点击finish即可生成配置文件

你可以用修改生成的配置文件hibernate.cfg.xml,用图形化的形式,比如可以添加一些属性

此时,你的Eclipse应该可以链接上数据库表了,先看一下吧

 

3、配置文件生成之后,也就是说可以链接上数据库了,下面就能够从数据库Table生成我们想要的Java文件了

点击run->hibernate code generation

在界面中选择输出路径、Package路径等,此时Console Configuration默认为我们在上一步中生成的配置。

Export标签中设置了我们要输出那些文件

reveng.xml后面点击setup,设置你要输出那些表,例如我们这里只输出student表(该步骤完成后会生成配置文件hibernate.reveng.xml)

最后点击finish,大功告成,生成的文件包括TStudentHome.java、Tstudent.java

Tstudent.java 就是我们要生成的带注解的实体类。

复制代码
/**
 * TStudent generated by hbm2java
 */
@Entity
@Table(name = "t_student", catalog = "happycardata")
public class TStudent implements java.io.Serializable {

    private Integer stuId;
    private String stuNetname;
    private String stuPassword;
    private String stuRealname;
    private String stuEmail;
    private String stuImg;
    private String stuInfo;
.........
}
复制代码

总体步骤不是太麻烦,如果表比较多,可以节省不少开发工作量。在设计好表结构之后,可以一次性生成初级版本java文件,然后再在初级版本的java文件的基础上进行手动修改,而不是单纯依靠工具生成。毕竟手动修改可控性更强,也更符合开发者的意图。

参考文件:

http://www.tuicool.com/articles/7zq22q

http://blog.csdn.net/lisq037/article/details/9057907

以上是关于SSH框架中 自动根据HBM.XML文件生成表结构,comment乱码的主要内容,如果未能解决你的问题,请参考以下文章

myeclipse.hbm.xml如何自动生成

idea根据数据库自动生成*cfg.xml和*hbm.xml

利用HibernateTools从数据库表生成带注解的POJO

如何让hibernate自动生成表

SSH的配置文件

hibernate.hbm.xml文件配置入门小结