多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
按时序图的调用顺序 ,我们在本小节小,开始编写service服务层。 和上节相同,在进行代码编写前,我们先画类图,如下所示: ![https://box.kancloud.cn/074445e45e91be2d7887ae97bf75c694_664x136.png](https://box.kancloud.cn/074445e45e91be2d7887ae97bf75c694_664x136.png) 然后在通过Atash来生成java代码: ``` package com.mengyunzhi.javaee.server; public class KlassServer { /** * 保存 */ public static void saveKlass(Long teacherId, String name) { } } ``` 然后,我们根据前面的时序图,进行代码的编写. ![https://box.kancloud.cn/696caf3899b23215e1a16094c4539c7a_2404x918.png](https://box.kancloud.cn/696caf3899b23215e1a16094c4539c7a_2404x918.png) ``` package com.mengyunzhi.javaee.server; import com.mengyunzhi.javaee.dao.KlassDao; import com.mengyunzhi.javaee.entity.Klass; public class KlassServer { /** * 保存 */ public static void saveKlass(Long teacherId, String name) { Klass klass = new Klass(name, teacherId); KlassDao klassDao = new KlassDao(); klassDao.create(klass); return; } } ``` # 测试 同样,我们进行测试前,先画一个测试的类图,并写入方法。然后编写相应的时序图。 ![https://box.kancloud.cn/e152de59ee2c92195c99a12c2c1fd6bf_472x148.png](https://box.kancloud.cn/e152de59ee2c92195c99a12c2c1fd6bf_472x148.png) 然后使用Astah生成java代码: ``` package com.mengyunzhi.javaee.serverTest; public class KlassServerTest { public void saveKlass() { } } ``` 再按时序图进行代码的填充 ![https://box.kancloud.cn/8a639144239022a6ee2af87a5e60ebfe_966x266.png](https://box.kancloud.cn/8a639144239022a6ee2af87a5e60ebfe_966x266.png) ``` package com.mengyunzhi.javaee.serverTest; import org.junit.Test; import com.mengyunzhi.javaee.server.KlassServer; public class KlassServerTest { @Test public void saveKlass() { KlassServer.saveKlass(4L, "二三班"); } } ``` 测试,并查看数据表. ``` Hibernate: insert into Klass (name, teacherId) values (?, ?) ``` ![https://box.kancloud.cn/c324367b970c1930484e7cb6be94acbc_546x50.png](https://box.kancloud.cn/c324367b970c1930484e7cb6be94acbc_546x50.png) 有了server层的支持,下一节中,我们开始写action层,并使用postman进行测试。 > 是的,你想的没错,在整个开发中,只有Action是可以使用外部程序进行测试的。这是由于只有它在与外部进行对接。