后端jfinal加前端vue搭建一个项目详细demo代码并且vue中js文件需要哪些
时间: 2024-02-09 09:08:21 浏览: 99
这里提供一个简单的demo,使用jfinal作为后端框架,vue作为前端框架,实现一个简单的用户管理系统。
后端jfinal代码:
```java
// UserController.java
public class UserController extends Controller {
public void index() {
List<User> users = User.dao.findAll();
renderJson(users);
}
}
// User.java
public class User extends Model<User> {
public static final User dao = new User().dao();
private Integer id;
private String name;
private String email;
// getter and setter
}
// JFinalConfig.java
public class JFinalConfig extends JFinalConfig {
public void configRoute(Routes me) {
me.add("/user", UserController.class);
}
public void configPlugin(Plugins me) {
// database plugin
DruidPlugin druidPlugin = new DruidPlugin("jdbc:mysql://localhost/test", "root", "123456");
me.add(druidPlugin);
ActiveRecordPlugin activeRecordPlugin = new ActiveRecordPlugin(druidPlugin);
me.add(activeRecordPlugin);
activeRecordPlugin.addMapping("user", User.class);
}
}
```
前端vue代码:
```html
<!-- index.html -->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>User Management System</title>
</head>
<body>
<div id="app">
<table>
<thead>
<tr>
<th>ID</th>
<th>Name</th>
<th>Email</th>
</tr>
</thead>
<tbody>
<tr v-for="user in users" :key="user.id">
<td>{{ user.id }}</td>
<td>{{ user.name }}</td>
<td>{{ user.email }}</td>
</tr>
</tbody>
</table>
</div>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script src="js/main.js"></script>
</body>
</html>
```
```javascript
// main.js
new Vue({
el: '#app',
data: {
users: []
},
mounted () {
axios.get('/user').then(response => {
this.users = response.data
})
}
})
```
在上述代码中,我们使用了axios库来发起HTTP请求,因此需要在前端页面引入axios.js文件。同时,在前端页面中,我们还需要引入一个main.js文件,用于创建Vue实例和渲染页面。
下面是main.js文件的完整代码:
```javascript
// main.js
new Vue({
el: '#app',
data: {
users: []
},
mounted () {
axios.get('/user').then(response => {
this.users = response.data
})
}
})
```
需要注意的是,我们需要在html页面中引入axios.js和main.js文件:
```html
<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
<script src="js/main.js"></script>
```
以上是一个简单的jfinal+vue项目的demo代码。当然,具体的实现方式和代码结构可能会因项目的需求而有所不同。
阅读全文