1、先创建大项目,点maven,选quickstart。 cn.kgc 项目名 。删掉项目里的SRC文件
2、在建子项目,maven,选quickstart。项目名common
3、在建项目,选springInitializr ,项目名 provider。 选 web spring web 、sql MySQL Driver, jdbc api ,mybatis Framework。
4、在建项目,选springInitializr ,项目名 consumer,选 web spring web 、sql MySQL Driver, jdbc api ,mybatis Framework。
5、在common中创建数据库连接,写数据库脚本。在common中的src,java。。。下创建vo文件,在里面写实体类,写序列化 implements serializable,写tostring方法。
6、继续创建service文件夹,在里面写实体类的接口,查询所有,用List<Map<String,Object>> 接口名( ); ,一对多后面括号不带参数,多对一后面括号带参数。 根据Id查详情,写作 Map<String,Object> info(Integer id); 如果有分页,写作PageInfo<Map<String,Object>> showPage(Integer pageNo,实体类名 实体类重命名);
7、在provider中的pom文件中导入微服考试配置文件 child-pom.xml。在provider项目中的java文件下创建mapper文件夹,写实体类的mapper接口,在接口方法上写相应注解和,sql语句查询条件,List集合上不能写sql语句。
curdate() 函数:返回当前的日期。用于add的sql语句获取日期。
如果有分页,写作PageInfo<Map<String,Object>> showPage(Integer pageNo,实体类名 实体类重命名);。
8、在provider项目中的resources文件夹下创建文件夹mapper,建立文件XXXmapper.xml 。namespace写mapper文件夹中的多对一的接口类路径。 select id 写接口方法名,showdata,parameterType写实体类名,resyltType写map,然后写查询方法。列名 like concat(’%’,#{列名},’%’))模糊查询所用。 order by 。。。。desc 降序排列。
9、在provider项目中的Java文件夹下创建service写serice接口的实现类。配注解@Service,@Transactional(上部)。里面加注解@Autowired 分别私有化XXXmapper接口,并重命名。返回 重命名.方法名();有参就带参。
查单条info,写new对象:
类名 对象名 = new 类名();
对象名.setId(id);
返回 接口重命名.方法名(对象名).get(0);(showData不是infoData)
实现类一对多。上部注解@Service 下部注解@Autowired 。
如果有分页,写作:
PageHelper.startPage(pageNo,4); // 数字是一页显示的条数
List<Map<String ,Object>> list=invitationMapper.optionData(inv); //与集合相同接口名,同方法名参数
rerurn new PageInfo<Map<String, Object>>(list);
10、在provider项目中的resources文件夹下。加入微服考试配置文件的spring-procider.xml和application 修改相应内容。注意spring文件夹中的接口名大小写。
11、在provider文件夹java文件夹下 ProviderApplication中加注解@MapperScan(“mapper接口的路径”)加注解@ImportResource(“classpath:spring-provider.xml”)
要开zookeeper文件才能测试
12、在cousumer项目修改pom.xml文件,与provider项目一样。在cousumer项目文件中建立controller文件夹,建立CenterController类,里面写service实现类,内容为serviceImpl里的所有接口实现。不需要写implements和接口名。先上部写注解@RestController,内部写@Autowired 私有化service接口 重命名。 所有接口方法公共化,上部加注解@RequestMapping(“/方法名。do”), 返回值为 重命名.方法名()。有参带参。
info方法注意 返回值写法,与查询全部的方法,只是方法名不同。
分页的返回值 私有化的接口重命名 .对应方法名(pageNo,类别名)。
13、在consumer项目中的resources文件夹下,添加微服项目考试配置文件中的application和spring-consumer.xml文件修改端口号,删掉数据源以外的内容。修改相应spring的service接口名内容。
14、在consumer项目中java文件夹下的ConsumerApplication文件上部加注释@ImportResource(“classpath:spring-consumer.xml”)