zoukankan      html  css  js  c++  java
  • 2015年创业中遇到的技术问题:41-50

     41.Bootstrap换行。
    col-md-10和col-md-2。
    这2个div按说应该在一行的,结果col-md-2换行了。
    看看样式,发现有多余的“margin-left: 1px;"。

    42.Service实现类定义了一个“自动调度进行刷新”的方法。
    @Override
    @Scheduled(cron = "0 0/10 * * * ? ")
    // 每10分钟一次
    public void refreshBannerPhoto() {
    bannerPhotoList = photoDao.find(searchBannerForm());
    }
    需要在接口类中,也定义一个方法。
     void refreshBannerPhoto();
     
    要不然可能出现以下错误。
    @Scheduled method 'refreshBannerPhoto' found on bean target class 'PhotoServiceImpl', 
    but not found in any interface(s) for bean JDK proxy. Either pull the method up to an interface 
    or switch to subclass (CGLIB) proxies by setting proxy-target-class/proxyTargetClass attribute to 'true'

    43.Nginx和Tomcat配置疑惑。

    需求:一个Tomcat下,部署2个项目。
    2个项目使用不同的域名访问。
    并且处于实际考虑,A项目必须部署在root下,从而解决图片等路径问题。
    在Java中,项目名称是个很烦人的东西。

    A项目
     server {
     37         listen 80;
     38         server_name fansunion.cn www.fansunion.cn blog.fansunion.cn;
     39       
     51        location / {
     52            proxy_pass   http://localhost:8080;
     53        }

    B项目
      server{
     76        listen 80;
     77        server_name soft.fansunion.cn;
     78        location / {
     79            proxy_pass http://localhost:8080/soft;
     80       }
     81
     82    }
     
     
     期望:访问 http://soft.fansunion.cn,访问http://localhost:8080/soft这个项目。
     
     结果:http://localhost:8080/soft,访问的是http://localhost:8080/根目录下的项目。
     
     
    折衷处理,绕过去,把soft项目部署到另外一个Tomcat的根目录下,这个Tomcat监听9080等不同的端口。

    问题:多一个Tomcat,多使用了100多M内存额。
     
     
    44.使用JSONP解决跨域问题。
    后端Java代码备份:
    // 对外提供的服务接口,演示用jsonp解决跨域问题
    // TODO jsoncallback是可选的,categoryid->categoryId
    @RequestMapping(value = "recentpost")
    public void recentPost(Integer categoryid, String jsoncallback,
    Integer count, Model model, HttpServletResponse response) {
    if (categoryid == null) {
    categoryid = DEFAULT_CATEGORY;
    }
    List<Post> list = postService.listRecent(categoryid, count);
    String str = JSONObject.toJSONString(list);
    str = jsoncallback + "(" + str + ")";
    super.returnMessage(response, str);
    }

    45.类型转换空指针异常。
       Integer ispage;
    if (ispage == 1){
    }
    ispage是null。
    这说明,Integer类型的ispage被转换成int,JDK内部转换时,报错。

    46.KindEditor获得html和text内容。

    方法一:editor.sync();
    $("#content).val();

    方法二:
    html格式内容,editor.html();
    文本格式内容,editor.text();

    47.ActiveMq的启动。
    启动ActiveMq
    cd /activemq/bin

    经常出现问题的启动方式: ./bin/activemq start
    更好的方式:使用bin目录下的linux-x86-64目录下的activemq启动
    ./bin/linux-x86-64/activemq start

    48.Spring注入属性的值到字段中。
    @Value("${loginCookieName}")
    private static final String loginCookieName = "cookieName";
    a.properties
    loginCookieName=abc

    49.权限漏洞。
    <mvc:interceptors>
    <mvc:interceptor>
    <mvc:mapping path="/**/*.html" />
    <mvc:mapping path="/**/*.json" />
    <mvc:exclude-mapping path="/login.html*"/>
    <bean class="com.p2p.backend.interceptors.BackendLoginInterceptor">
    <property name="loginUrl">
    <value>${backendLoginUrl}</value>
    </property>
    </bean>
    </mvc:interceptor>
    <mvc:interceptor>
    <mvc:mapping path="/**" />
    <bean class="com.p2p.base.interceptors.BackendPermissionInterceptor">
    </bean>
    </mvc:interceptor>
    </mvc:interceptors>

    重新看了下权限,发现有漏洞,我的火眼金睛不是瞎吹的。

    访问post.json,没有登录,没有权限,按说返回false。
    但是,post.json2,就绕过去了。

    另外一个原因是,SpringMVC的DispatchServlet拦截的是“/*”所有,而不是只拦截/*.html和/*.json。

    50.Freemarker的base问题。
    实际后端响应的是 http://login.jiutianniao.com/login

    静态资源的路径是:
    ${base}/static/

    通过Nginx代理之后,${base}是http://login.jiutianniao.com/login/static

    访问报错了。

    因为,通过Nginx访问的地址是http://login.jiutianniao.com/static

    这个地址映射到后端http://login.jiutianniao.com/login/static

    解决办法:base变量也做成可配置的。

    静态资源的路径是:
    ${userDomain}/static/

    String contextPath = request.getContextPath();
         model.put("base", contextPath);
    总结:${base}在没有代理的情况下,很好。
    有Nginx代理之后,目录访问会不正常。
  • 相关阅读:
    echo和重定向
    grep命令
    重温JSP学习笔记--JSP动作标签
    重温JSP学习笔记--El表达式
    重温JSP学习笔记--El函数库
    重温JSP学习笔记--JSTL标签库
    重温JSP学习笔记
    Android 用 camera2 API 自定义相机
    从零开始用 Flask 搭建一个网站(一)
    从零开始用 Flask 搭建一个网站(二)
  • 原文地址:https://www.cnblogs.com/qitian1/p/6462812.html
Copyright © 2011-2022 走看看