- 浏览: 209697 次
- 性别:
- 来自: 哈尔滨
最新评论
文章列表
1.常见排序算法的时间、空间复杂度
参考文献:
http://wenku.baidu.com/link?url=UV8radodoNHJRxpJ062pArRCLgLGK7dtDS1nZgHcxdJSza0Tu5yfa9MyF7gZbYvzT0DhuT0AQyzeLp0OjP_R1FzHGfIO5VhzbjVHk_rYeay
2.常见排序算法
参考文献:
http://www.cnblogs.com/liuling/p/2013-7-24-01.html
总结:
算法名称 算法思想 时间复杂度(最好) 时间复杂度(最坏) 时间复杂度(平均) 空间复杂度 稳定性直接插入排序 每步将一个待 ...
更新程序后,运行API中的startup.java
报错
解决:
选中工程 -》 右键 -》 MAVEN -》 update dependencies
重新执行
确认方法没有错误,但查询结果不正确
- 博客分类:
- MyBatis
问题:在调试某web工程时,发现一个po.getXXX()没有执行,Debug 调试,该XXX属性为空,但数据表中有值,且没有任何报错
解决:
1.重新执行单元测试类,发现问题确实存在,查不到值
2.检查mapper.xml 没有看到问题
3.重新检查,发现是 查询select xx..的问题,那个属性字段,没有在select范围内
注意:
1.po类只是映射类,同一个po类可以映射多个表
2.mapper.xml文件中可以有多个表的操作,
优势:若需要保存数据的现有状态,且在另一个表中保存数据的历史变化状态,
参数使用同一po类,避免了po间数据转化
3.书写时要 ...
场景:列表检索功能,查询条件中带有英文单引号,点击查询,系统异常
原因:字符串类型匹配时,检索条件默认被单引号括起来,若条件中带有单引号,会引起单引号匹配错误的问题
如:
select * from test where name = 'java'sname';
解决:
1.使用转译
判断查询条件中是否有单引号,若有替换改该单引号,转译
(1)'',两个单引号
(2)\'
select * from test where name = 'java''sname';
或
select * from test where name = 'java\'sname';
...
Java heap space
1.程序中出现异常
解决异常,重启SpringSource
避免出现这种错误
说明:尝试了多种方式仍然未能解决,与其煞费苦心去解决,不如釜底抽薪,杜绝这种问题
问题:重启服务前程序中有断点才会出现弹出框提示,且阻断程序继续执行,需要多次点击确认
解决:取消断点,即在重新编译执行前,取消断点,服务重新启动后再打断点,进行DEBUG调试
解释:启动前打断点,Eclipse 无法找到该断点,原因是编译时,字节码改变了,导致eclipse无法读取对应的行了,把断点取消了,再重新打,就可以了。
参考文献
http://bbs.csdn.net/topics/390389332
网上找到的解决方法总结如下:
1.Eclispe中
window-& ...
一、log4j中log.isDebugEnabled(), log.isInfoEnabled()和log.isTraceEnabled()作用
1.
项目在应用log4j打印Debug,Info和Trace级别的log时需要加上对应的三个方法进行过滤,代码如下:
if (log.isDebugEnabled()) {
log.debug(" From: " + req.getFrom().toString() + ...
1.tools.xml
<?xml version="1.0"?>
<tools>
<toolbox scope="request">
<tool class="org.apache.velocity.tools.generic.ResourceTool"
bundles="resources"
locale="en_US"/>
</toolbox>
...
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class RequestLineServlet extends HttpServlet {
@Overri ...
首先,URI,是uniform resource identifier,统一资源标识符,用来唯一的标识一个资源。而URL是uniform resource locator,统一资源定位器,它是一种具体的URI,即URL可以用来标识一个资源,而且还指明了如何locate这个资源。而URN,uniform resource name,统一资源命名,是通过名字来标识资源,比如mailto:java-net@java.sun.com。也就是说,URI是以一种抽象的,高层次概念定义统一资源标识,而URL和URN则是具体的资源标识的方式。URL和URN都是一种URI。
在Java的URI中,一个URI实例 ...
问题场景:
程序中的方法莫名其妙的执行了两次,导致结果与预期的不一致
比如:调用接口发送短信验证,收到了两次短信,发送时间几乎相同
问题分析:
1.struts2中action调用两次问题
struts2 中JSON的原理是在ACTION中的get方法都会序列化,所以前面是get的方法只要没指定不序列化,都会执行解决方法
2.程序中有以getXXX()的方法
1. json格式下, firefox中的yslow插件会发送第二个 HTTP GET 请求得到页面的信息。.
2. ajax模式下,调用的action方法不能为get*方式命名,内中机理未知。
结论:action中方法最好不要 ...
一、本质区别
1.String 修改的内容不可改变
1.1 String 类不可继承
// final 修饰的类不可继承
public final class String
implements java.io.Serializable, Comparable<String>, CharSequence
1.2 String 修饰的内容不可变
/** The value is used for character storage. */
private final char value[];
2.StringBuffer / StringBuild ...
问题:try catch 中添加 return ,fianlly中的代码是否依然会执行?
代码:
public static void main(String args[]){
try{
int a = 0/0 ;
}catch(Exception e){
System.out.println(e.getMessage());
return ;
}finally{
System.out.println("return 后的fianlly是否仍然会输出");
}
System.out.println(UUID.randomUUID().toStrin ...
经验总结
1.字符串连接不再用+号,而要使用StringBuilder.尤其是在循环中拼接字符串
参考:http://blog.csdn.net/lclai/article/details/6141548
2.取最大/小值的时候优化查找数据库的sql,不要全部取出来再get(0),按照指定的规则排序倒叙limit 1
3.不容易理解的代码要加注释,不要通篇都是注释,在关键点处添加,方法要单独抽出来
4.相同的代码拆出来,便于复用
5.遇到变量,先判断是否可用,然后再写逻辑,即先判断是否为空,若为空如何处理
6.对list查询结果的判空,list==null&&list.siz ...
简述:项目发版时需要添加版本号码,以往都是已发版日期,每次发版前都需要更改,感觉麻烦
问题:因为版本每次不同即可,可使用UUID代替
实现:在Velocity中使用自定义授命函数
过程:
UUID的概念,
参考:
http://www.cnblogs.com/jdonson/archive/2009/07/22/1528466.html
http://blog.csdn.net/carefree31441/archive/2009/03/17/3998553.aspx
UUID可以当做表中的主键
1.定义页面
<html><body>#version()</bo ...