(二)模仿学习-DAO数据的模仿

初南电脑学习 2024-02-23 02:21:06
创建数据库

CREATE TABLE `t_zztl` (

`pid` INT(11) NOT NULL AUTO_INCREMENT,

`xdata` VARCHAR(100) DEFAULT NULL,

`ydata` VARCHAR(100) DEFAULT NULL,

PRIMARY KEY (`pid`)

) ENGINE=INNODB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8

创建实体类模仿包里的文件,编写我们自己的实体类

创建实体类,名字模仿包里的文件,比如数据表交t_topic,会有两个文件分别叫TTopic.java和TTopic.hbm.xml这两个文件,我们也创建这两个文件。

模仿这两个文件完成里面的内容

先模仿第一个java文件

序列化和字段

这是这个实体对应的数据表创建语句,可以和上面的字段进行对应。,我们字段的类型和t_topic类似的有pid和author(所以我上面创建语句是按照这个项目里的形式创建的不是乱创建的,就是为了和它的字段匹配)

我们只有3个字段,所以字段会比较少,其中get/set字段自动生成。

多余的字段可以选择不写,但是t_topic中的字段也是少于TTopic.java中的字段?是因为只要包含数据库中的字段,可以在TTopic.java中写更多的属性是影响的。

TTopic.java里面有构造函数,我们也生成两个构造函数

自动生成一下,也可以自己写

后面没有了模仿的了,我们来看TTopic.hbm.xml。因为hbm.xml是hibernate的配置文件,所以要按照这个命名,如果你知道就直接写就可以了。

按照上图里的内容,我们做下面的更改

2、我们继续模仿DAO

先看我们的模仿文件TTopicDAO,先读这个文件。

根据这个文件的内容,我们需要写下面的部分

extends HibernateDaoSupport表示继承Hibernate的框架支持

private static final Log log = LogFactory.getLog(TTopicDAO.class);是表示日志的

然后就是字段属性

我们已经知道t_topic是有这样的字段

所以这些字段和数据库是有关系的

那么我们取字段也是按照数据表中的字段保留

继续模仿,下面这个在注释里写了什么都不做,但是我么可以通过名字和修饰符判断出来是要进行初始化的。

接下来这个方法从名字是看是要用来保存的,其中log.debug和log.error类似于system.out.println()使用来显示日志信息的,可以选择不要。只要更改实体就可以了。

更改后看一下

下面这个类似,表示的是删除

下面这个表示通过编号查询,所以有一个参数是id编号

我们把这两个复制过来进行改动

其中findById中一些内容注意

然后是下面的方法,这个可以理解为查询多个,多属性查询

这是更改后的,这个的用途可以理解为有多个字段查询的时候不需要单独一个个的写,比如通过xdata和ydata两个查询,就可以这个方法。

接下来的函数

这个函数通过名字我们就能知道这是通过属性或者字段去查询的,是单个属性字段。指定属性名和属性值的方式。

继续往后的函数

这个是通过某一个具体的属性完成的,我们只有三个属性,所以只需要写三个就可以了。但本质上是通过上面的属性名函数去查询的。

最后一个是查询所有的

这个是查询所有数据的,如果数据量不大可以使用,数据量大的话就不要使用了

接下来这几个函数涉及到

Hibernate的一些专业术语,我们如果对这个不感兴趣或者以后工作用不到,就模仿的写就可以了。这几个概念是持久状态,托管状态,瞬时状态。

我们直接模仿了

还有一个

这个可以理解为,获取实例对象。

0 阅读:0

初南电脑学习

简介:感谢大家的关注