記一次SSM項目小結(一)
- 攔截器重定向到localhost
- nginx和tomcat中session失效
- mybatis的xml文件不生效
- 數據庫用戶創建、權限、及遠程連接
- pagehelper配置報錯
- 百度情感傾向分析接口使用
攔截器重定向的問題,攔截器重定向到到了localhost
-
當把代碼上傳到服務器后,登錄攔截器進行重定向,然后重定向到了localhost
解決辦法:將重定向為絕對網址
這樣的話,攔截器進行重定向就不會重定向到localhost
nginx和tomcat之間session的問題
不進行session的nginx的文件配置,可以參考以前博客,如果僅僅進行這樣配置,session會失效
server {
listen 80;
server_name 域名;
// 文件地址
root /usr/tomcat/apache-tomcat-8.5.35/webapps/xxx;
charset utf-8;
location / {
// 轉發地址
proxy_pass http://127.0.0.1:8080/xxx/;
}
}
關於session的配置,我是參考這篇博主的博客
server {
listen 80;
server_name hole.weno.cc;
root /usr/tomcat/apache-tomcat-8.5.35/webapps/yibanHole;
charset utf-8;
location / {
proxy_pass http://127.0.0.1:8080/yibanHole/;
proxy_cookie_path /yibanHole /;
}
}
進行這樣配置后,網站的session就沒有問題了
mybatis中mapper的xml文件不生效的問題
這個問題真的是氣死我了(ノ▼Д▼)ノ,當我將mapper的xml文件進行修改的時候,文件配置總是不生效,到后面才發現,在源文件中,xml文件進行了改變,但是在輸出文件夾中,文件就沒有進行改變,文件情況大概就是這樣。

1544885690933
這時候,就emm手動更新下吧。
數據庫的用戶的創建,權限的設定,以及遠程連接的設置
個人對數據庫不是很了解,所以就權當是記一份筆記了。
- 首先,先是創建創建一個用戶
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
- username:創建的用戶名
- host:指令登錄的主機:比如說
localhost
,如果你想遠程連接的話,可以使用通配符%
這樣,就可以從任意主機登錄了。 - password:登錄密碼,可以為空。
- 然后,進行權限的設置
GRANT privileges ON databasename.tablename TO 'username'@'host'
- privileges:表示用戶操作的權限:比如說select,insert,授予所有權限可以使用
ALL
- databasename:數據庫的名字,可以使用通配符
*
代表所有 - tablename:表名,可以使用通配符
*
代表所有 - username和host:就是前面創建的。
- 最后,進行刷新
flush privileges;
關於mybatis分頁的配置問題
使用pagehelper
進行分頁,但是報錯如下
Bean must be of 'org.apache.ibatis.plugin.Interceptor' type
Inspection info:Checks value types for Spring injections (properties & constructor arguments)
spring-mybatis.xml的部分文件配置如下,就是參考上一篇博客。
<!--整合spring和mybatis,就不需要像以前一樣寫mybati的配置文件了-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<!-- 自動掃描mapping.xml文件 注意路徑是"/"不是"."-->
<property name="mapperLocations" value="classpath:cc/weno/mapper/*.xml"/>
<!--配置分頁插件-->
<property name="plugins">
<array>
<bean class="com.github.pagehelper.PageHelper">
<property name="properties">
<value>
<!-- 參數配置可以參考https://github.com/pagehelper/Mybatis-PageHelper/blob/master/wikis/zh/HowToUse.md -->
dialect=mysql
offsetAsPageNum=true
reasonable=true
</value>
</property>
</bean>
</array>
</property>
<property name="configuration">
<!--可以將之前mybatis的一些配置項轉移到這里來-->
<bean class="org.apache.ibatis.session.Configuration">
<!--下划線轉駝峰-->
<property name="mapUnderscoreToCamelCase" value="true"/>
<!-- 開啟日志記錄文件 日志配置文件在resources目錄下 -->
<property name="logImpl" value="org.apache.ibatis.logging.log4j.Log4jImpl"/>
</bean>
</property>
</bean>
解決方法就是,emm,改變pagehelper
的版本。
使用4.1.6的版本,5.1.2會出現這個錯誤【其他版本未知】。
<!-- Mybatis分頁依賴 -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>4.1.6</version>
</dependency>
百度情感傾向分析接口使用
首先,我使用的是一個HttpRequests的jar包進行開發的。
<!--java發送http請求的庫-->
<dependency>
<groupId>com.github.kevinsawicki</groupId>
<artifactId>http-request</artifactId>
<version>5.6</version>
</dependency>
發送數據關鍵的代碼如下
JSONObject jsonObject = new JSONObject();
jsonObject.put("text",text);
// 請求數據
// BaiduApiMsg.TEXT_URI = https://aip.baidubce.com/rpc/2.0/nlp/v1/sentiment_classify?access_token=
// BaiduApiMsg.BAIDU_TOKEN 就是獲取到的token
HttpRequest request = new HttpRequest(BaiduApiMsg.TEXT_URI+BaiduApiMsg.BAIDU_TOKEN,"POST");
// 按照百度API文檔添加
request.contentType("application/json", "GBK");
// 發送數據
request.send(jsonObject.toJSONString());
String getResult = request.body();
在這里面,一定要發送json格式
的數據【被這個坑了幾個小時,╮(╯▽╰)╭】,不然就會返回
{
"error_code": 282004,
"error_msg": "invalid parameter(s)",
"log_id": 3232131231
}
這次主要是記一下開發項目遇到的比較坑的問題,以及要注意的地方。
如果只剩下最后的方法,那必然就是最好的方法 ——《將夜》