新建项目
使用IDEA新建springboot项目
新建项目
添加不同层的包
其中
common:通用代码,共用代码,常量类,异常处理
config:配置
controller(api、web):控制层
api:需要登录后才能使用的接口
open:不需要权限的接口
dao:data access object 数据访问层
model(mapper、responsibility):实体类
DTO: 数据传输对象
VO: 视图层对象
service:服务逻辑层
Impl:接口,实现类
utils:工具
包名要统一,保持一致。
尝试运行
添加IndexController类,并加上@Controller注解,添加
@RequestMapping("/hello")
@ResponseBody
public String Hello() {
return "hello world";
}
运行后能在http://localhost:8080/hello
看到hello world则说明运行成功。
引入依赖
引入依赖两步骤:
- 在
pom.xml
中引入 - 有些依赖需要在
resources
下的application.properties
中进行配置,例如数据库的url、用户名和密码等。由于yml格式可读性更强,所以把properties修改为yml。(快捷键Shift+f6),它是按照缩进来看级别的
SysUser类
首先添加成员变量。
其中,需要给添加一个随机的序列id,在setting
里搜索serialVersionUid
,勾上
SysUser类实现Serializable接口。
此时,alt+回车可以自动添加serialVersionUID。
此时POJO写完了,但是,需要让数据库知道这个类和数据库中的哪个表对应,所以要加上@Entity和@Table的注解,其中Table中要写对应的表名。
报错Cannot resolve table,按照文章连接数据库后,刷新数据库连接,不再报错。
为每个属性加上@Column注解,还可以添加一些约束。
为主键添加自动生成主键的注解@GeneratedValue,还可以添加一些策略,
AUTO代表由框架自动定义,IDENTITY为主键自增,mysql用的IDENTITY。
SysUserDAO
在dao层下新建接口SysUserDAO,由于使用JPA,直接继承,其中有两个参数,一个是实体类,一个是实体类对应的主键。
public interface SysUserDAO extends JpaRepository<SysUser,Integer> {
}
这里虽然什么都没有写,但是JPA的接口里是实现了一些方法的
单元测试
选中方法名后右键,可以运行单元测试。
跑完后显示绿勾即没有错误。
@SpringBootTest表示测试的注解
@Test是单例方法上的注解,返回值void表示生成一个测试用例。
新建一个dao包,测试dao的正确性。
新建SysUserDAOTest,
@SpringBootTest
public class SysUserDAOTest {
@Autowired
SysUserDAO sysUserDAO;
@Test
void testFindAll() {
sysUserDAO.findAll().stream().forEach(System.out::println);
}
}
右键类名运行,可以看到所有用户数据打印在控制台。
thymeleaf框架的配置
在controller中添加
@RequestMapping("/")
public String index() {
return "index";
}
resources中,static用于存放js、css等资源,而template用于存放视图文件。
在template中添加index.html,在访问http://localhost:90/时就会看到index中的内容。
构建前端项目
下载
微信开发者工具
HBuilderX
配置微信开发者工具
开启服务端口,从而可以通过命令行调用开发者工具ide编译代码。
在HBuider中新建uni-app项目,在manifist.json中勾上ES6转ES5,
在工具-设置中,添加微信web开发者工具路径。
选择运行-运行到小程序模拟器-微信开发者工具,项目会编译运行,成功后会弹出页面来。