渔民子 發表於 2019-10-28 09:16:00

angular + spring boot + mysql

<p>  花了两周的时间,我终于做完实训了。</p>
<p>  这次用的全是新学的技术,前端框架是angular,组件库是ngzorro的,后端是spring boot,数据库是mysql。这次被逼着学习新东西,总算是凑凑合合把这些技术学会了。</p>
<p>  先说前端的angular框架,现在我学会了基本的建component,设置路由和其他一些框架的特效,如果以后要用却忘记了,可以去angular官网看英雄教程。</p>
<p>  再看后端,spring的框架在今年暑假的时候我就被要求学,可是我初看一头雾水,又没有实际使用的需求,我就一直拖着没学。这次总算学习了一波。</p>
<p>  为了让后端能够与数据库连接,先配置resources文件夹中的application.properties文件,如下:</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 0, 1)">server.port=8080

# Hibernate 相关配置

## 方言
#hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect

## 显示Sql
hibernate.show_sql=true
## 自动建表方式
hibernate.hbm2ddl.auto= update

## 数据库连接
spring.datasource.url=jdbc:mysql://localhost:3306/web

## 用户名
spring.datasource.username=root

## 密码
spring.datasource.password=123456

## 数据库驱动
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

## 建表方式
spring.jpa.properties.hibernate.hbm2ddl.auto=update

# 方言
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect</span></pre>
</div>
<p>  该配置以用户名为root,密码为123455区连接localhost:3306的mysql数据库中的web库。</p>
<p>  一般来说后端是用来作为前端与数据库的桥梁的。操作一个数据模型,在后端包含三个部分:</p>
<p>  - 模型类:模型类定义的成员变量需要和数据库一模一样,并且包含各个变量的get和set方法。</p>
<p>  - 控制类(controller):控制类用于给前端提供操作接口,以及做基本的逻辑操作。给前端提供的操作接口,例如:</p>
<div class="cnblogs_code">
<pre>@RequestMapping("/update"<span style="color: rgba(0, 0, 0, 1)">)
</span><span style="color: rgba(0, 0, 255, 1)">public</span><span style="color: rgba(0, 0, 0, 1)"> CustomResponse updateUserById(@RequestParam User u) {
    User user </span>=<span style="color: rgba(0, 0, 0, 1)"> u;
    userRepository.save(user);
    </span><span style="color: rgba(0, 0, 255, 1)">return</span> <span style="color: rgba(0, 0, 255, 1)">new</span> CustomResponse("更新成功"<span style="color: rgba(0, 0, 0, 1)">);
}</span></pre>
</div>
<p>  需要注意的是,在前后端通信中,定义了一个CustomResponse封装数据。</p>
<p>  - 直接操作数据库类(Repository):夹在数据库与控制类之间,为控制类提供操作数据库的方法。</p>
<p>  基本上就是这些内容了,但是在实际开发的时候还是遇到很多坑,问题参考的如下:</p>
<p>  后端部分:</p>
<p>    - 如何在IDEA中自动生成getter和setter方法:右键-&gt;点击Generate-&gt;点击getter and setter-&gt;全选-&gt;点击OK。</p>
<p>    - 在IDEA工程目录中无法找到新建Java文件的选项该如何解决:参考链接。</p>
<p>    - spring boot操作mysql数据库:参考链接。<br>    - @Param注解的用法:参考链接。</p>
<p>    - 浏览器控制台报无法跨域问题的解决办法:参考链接。</p>
<p>    - 如何取消在IDEA中出现相似代码时的黄线提示:参考链接。</p>
<p>&nbsp; &nbsp;&nbsp;  &nbsp; - 报No identifier specified for entity错的原因:参考链接。出现这个报错其实是模型类中的变量里没有声明唯一的主键。</p>
<p>    - 其他注解的用法:参考链接。</p>
<p>&nbsp;   &nbsp; - @transactional无效的问题:参考链接。</p>
<p>    - 包含各种jar文件的lib文件夹应放置在Web-INF目录下。</p><br><br>
来源:https://www.cnblogs.com/potatorain/p/11737367.html
頁: [1]
查看完整版本: angular + spring boot + mysql