- 如何生成JSON文件
簡單說[]中間的List,{}中間的是Map。[{},{}]就是List - 多表查詢
SELECT * FROM (
SELECT p.productionPlanId,p.skuid,p.allNum FROM daa p GROUP BY p.productionPlanId,p.skuid
) a left JOIN (
SELECT a.id,a.productionNo FROM abc s
) b ON a.productionPlanId = b.id
3. 循環插入語句
<insert id="insertRight" parameterType="*"
useGeneratedKeys="true" keyColumn="id">
INSERT INTO aa(id,num)
values
<foreach collection="list" item="item" separator=","
open="" close="">
(#{item.id},#{item.num})
</foreach>
</insert>
controller
// 按逗號分割數組
String[] str = strees.split(",");
List<Map<String, Object>> listMap = new ArrayList<Map<String, Object>>();
for (int i = 0; i < str.length; i++) {
Map<String, Object> map = new HashMap<String, Object>();
String operationId = str[i];
map.put("num", num);
listMap.add(map);
map.put("id", id);
}
- 當string爲空時,轉換成integer,mybatis會自動加0
<select id="search" resultType="*">
select * from pro_delivery WHERE 1=1
<if test="id2!='' and id2!=null">AND id LIKE '%' #{id2} '%'</if>
<if test="names!='' and names!=null">AND names LIKE '%' #{names} '%'</if>
</select>
改成
model裏添加
6. sql裏不能在表中有下劃線的命名,例如(Pro_xx),在mybatis查詢會出錯,傳回空值,解決方法:
7.保存長文本出錯
解決方法一:
這個問題是因爲StringBuffer導致,最後將StringBuffer字符轉換爲String即可。
8. Duplicate entry ‘17’ for key 1
原來因爲數據庫本身就存在這個ID,所以用insert會報錯,應該用update
9.Field ‘id’ doesn’t have a default value
因爲數據庫中的ID沒有設置爲自增長
10.Address already in use: connect
臨時解決辦法:關閉瀏覽器。永久解決辦法
11.tomcat報錯——PermCon space
解決辦法:修改eclipse的Run Configurations。點擊“Run”-“Run Configurations”,在打開的窗口中點擊“Arguments”選項卡。
在VM arguments中內容最下邊輸入:
-Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m