• 记一次SSM项目小结(一)


    记一次SSM项目小结(一)

    • 拦截器重定向到localhost
    • nginx和tomcat中session失效
    • mybatis的xml文件不生效
    • 数据库用户创建、权限、及远程连接
    • pagehelper配置报错
    • 百度情感倾向分析接口使用

    拦截器重定向的问题,拦截器重定向到到了localhost

    • 当把代码上传到服务器后,登录拦截器进行重定向,然后重定向到了localhost

      解决办法:将重定向为绝对网址

      1544881869038
      1544881921624

      这样的话,拦截器进行重定向就不会重定向到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
    1544885690933

    这时候,就emm手动更新下吧。

    数据库的用户的创建,权限的设定,以及远程连接的设置

    个人对数据库不是很了解,所以就权当是记一份笔记了。

    1. 首先,先是创建创建一个用户
     CREATE USER 'username'@'host' IDENTIFIED BY 'password';
    
    • username:创建的用户名
    • host:指令登录的主机:比如说localhost,如果你想远程连接的话,可以使用通配符%这样,就可以从任意主机登录了。
    • password:登录密码,可以为空。
    1. 然后,进行权限的设置
     GRANT privileges ON databasename.tablename TO 'username'@'host'
    
    • privileges:表示用户操作的权限:比如说select,insert,授予所有权限可以使用ALL
    • databasename:数据库的名字,可以使用通配符*代表所有
    • tablename:表名,可以使用通配符*代表所有
    • username和host:就是前面创建的。
    1. 最后,进行刷新
     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
    }
    

    这次主要是记一下开发项目遇到的比较坑的问题,以及要注意的地方。

    如果只剩下最后的方法,那必然就是最好的方法 ——《将夜》

  • 相关阅读:
    Orleans 2 实例
    Linux基础1 目录和文件系统
    C#中的异步多线程补充1
    委托的小例子(基本委托,匿名方法,lambda)
    Orleans 1 基本概念
    WPF10 Binding-2
    WPF9 Binding-1
    WPF8 UI布局
    WPF7 布局控件
    软工总结
  • 原文地址:https://www.cnblogs.com/xiaohuiduan/p/10125571.html
Copyright © 2020-2023  润新知