jeecgboot的前后端是怎么连起来的
时间: 2024-03-30 16:33:24 浏览: 63
JeecgBoot是一个基于SpringBoot快速开发平台,前端框架使用的是Vue.js。前后端的连接一般使用RESTful API实现。
JeecgBoot提供了许多生成器来生成前后端代码,包括生成前端Vue.js代码和后端Java代码,这些代码使用RESTful API相互连接。前端Vue.js代码通过Axios等HTTP客户端向后端发送请求,后端根据请求类型和路径返回对应的数据。
JeecgBoot还提供了通用的前端组件和后端接口,以便开发者快速搭建项目并实现前后端交互。同时,JeecgBoot还支持前后端分离部署,开发者可以将前后端分别部署在不同的服务器上。
相关问题
jeecgboot 字典编码前后端配置
JeecgBoot 是一个基于代码生成器的开发框架,可以快速搭建后台管理系统。如果要使用字典编码功能,需要进行前后端配置。
1. 后端配置
首先,需要在数据库中创建字典表,例如:
```
CREATE TABLE sys_dict (
id varchar(36) NOT NULL COMMENT '主键',
dict_code varchar(100) NOT NULL COMMENT '字典编码',
dict_name varchar(100) NOT NULL COMMENT '字典名称',
dict_type varchar(10) NOT NULL COMMENT '字典类型',
description varchar(200) DEFAULT NULL COMMENT '描述',
create_time datetime DEFAULT NULL COMMENT '创建时间',
update_time datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统字典表';
```
然后,需要在后端代码中进行配置。在 `SysDictController` 类中,添加以下代码:
```
@ApiOperation(value = "查询字典数据", notes = "根据字典类型查询字典数据")
@GetMapping(value = "/getDictItems/{dictType}")
public Result<List<SysDictItemVO>> getDictItems(@PathVariable String dictType) {
List<SysDictItemVO> dictItems = sysDictService.queryDictItemsByDictType(dictType);
return Result.ok(dictItems);
}
```
这段代码会根据字典类型查询字典数据,并返回一个包含字典项的列表。
2. 前端配置
在前端代码中,需要进行如下配置:
首先,在 `src/api` 目录下创建 `dict.js` 文件,添加以下代码:
```
import request from '@/utils/request'
export function getDictItems(dictType) {
return request({
url: '/sys/dict/getDictItems/' + dictType,
method: 'get'
})
}
```
这段代码会调用后端接口,获取字典项列表。
然后,在需要使用字典编码的组件中,例如表单中的下拉框,添加如下代码:
```
<el-select v-model="form.dictCode">
<el-option v-for="item in dictItems" :key="item.dictCode" :label="item.dictName" :value="item.dictCode"></el-option>
</el-select>
```
这段代码会绑定一个 `dictItems` 数组,其中包含了字典项列表。在组件初始化时,需要调用 `getDictItems` 方法获取字典项,并将返回结果赋值给 `dictItems` 数组:
```
import { getDictItems } from '@/api/dict'
export default {
data() {
return {
dictItems: [],
form: {
dictCode: ''
}
}
},
created() {
getDictItems('dict_type').then(response => {
this.dictItems = response.data
})
}
}
```
这段代码会在组件创建时调用 `getDictItems` 方法,并将结果赋值给 `dictItems` 数组。其中,`dict_type` 是字典类型编码,可以根据实际情况修改。
我已经在Windows上安装了Windows版本OnlyOffice 文档服务器,我想要集成到jeecgboot前后端分离的项目,前端用的是layuiAdmin,我该怎么把OnlyOffice 集成上去,可以说详细点吗?
首先,你需要在你的 layuiAdmin 前端项目中添加Office 的 JavaScript SDK。可以在 OnlyOffice 官下载最新版本的 SDK,然后将其添加到你的前端项目中。
接下来,你需要在 jeecgboot 后端项目中进行一些配置。具体步骤如下:
1. 在 jeecgboot 项目中创建一个名为 "onlyoffice" 的文件夹,用于存放 OnlyOffice 相关的文件。
2. 下载 OnlyOffice 文档服务器的 Docker 镜像。你可以在 OnlyOffice 官网找到 Docker 镜像的下载链接。
3. 使用 Docker 运行 OnlyOffice 文档服务器。你可以使用以下命令在本地运行 OnlyOffice 文档服务器:
```
docker run -i -t -d -p 80:80 onlyoffice/documentserver
```
4. 修改 jeecgboot 的配置文件,以便允许 OnlyOffice 访问 jeecgboot 的 API。在 application.yml 文件中添加以下配置:
```
cors:
allowed-origins: "*"
allowed-methods: "*"
allowed-headers: "*"
allow-credentials: true
```
5. 创建一个名为 "OnlyOfficeController" 的 Java 类,用于处理与 OnlyOffice 相关的请求。在该类中添加以下方法:
```
@GetMapping("/onlyoffice/config")
public Map<String, Object> getConfig() {
String serverUrl = "http://localhost:80";
String secret = "mysecret";
String filePath = "/path/to/my/document.docx";
Map<String, Object> config = new HashMap<>();
config.put("document", new HashMap<>());
config.put("documentType", "text");
config.put("editorConfig", new HashMap<>());
config.put("token", OnlyOfficeUtils.generateToken(serverUrl, secret, filePath));
return config;
}
```
在该方法中,你需要替换 "serverUrl"、"secret" 和 "filePath" 为你自己的值。这些值可以在 OnlyOffice 文档服务器中找到。
6. 在 layuiAdmin 前端项目中添加一个名为 "onlyoffice.html" 的页面。在该页面中添加以下代码:
```
<div id="placeholder"></div>
<script src="onlyoffice/sdk.js"></script>
<script>
var docEditor = new DocsAPI.DocEditor("placeholder", {
"document": {
"fileType": "docx",
"url": "/api/onlyoffice/config",
"key": "mysecret"
}
});
</script>
```
在该代码中,你需要修改 "url" 和 "key" 的值,使其与你的 OnlyOffice 配置文件中的值匹配。
7. 在 layuiAdmin 前端项目的路由配置中添加一个名为 "onlyoffice" 的路由,将其指向刚才创建的 "onlyoffice.html" 页面。
```
{
path: '/onlyoffice',
name: 'OnlyOffice',
component: () => import('@/views/onlyoffice.html')
}
```
现在,你已经完成了将 OnlyOffice 集成到 jeecgboot 前后端分离项目的步骤。你可以访问前端页面,打开 OnlyOffice 编辑器,编辑任何文档并保存到 jeecgboot 后端项目中。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)