佳晓
tongguangyu
因为是字符串啊
我爱孙佳怡
因为上次 Map<String ,Object> param=new HashMap<String, Object>(); 就相当于创建了个集合的对象 param ,而每个 map 中的 key 是一样的,就可以直接用已经创建的 param 来存储,没有新创建容器,只是更新了 value 而已,而你新创建 param2 就相当于又在内存中开辟了空间存储有相同 key 的容器,浪费了空间。
DT2010
我有些明白了,就是用get(i)取出来
慕虎307605
这是查询单个信息吧,你的params的size为0,因为你的控制层那里,param.put()数据放进去之后,没有往List<Map<String Object>> params加入.
应该少一句
params.add(param);
阿迪pang
哦哦,是在GoddessDao里面忘了给sql语句加空格,懂了
慕虎6315214
是你自己的编码问题吧
Fresher_L
result.get(i)得到的是一行数据,还需通过result.get(i).getUser_name()等获取某一个具体值
艾米丽宏
第二个map.put("name","email")将第一个给覆盖了,注意老师的视频,老师这里有new一个新的map对象哦!
神亿般的存在
可以的
静灬心
可以去看java入门第三季,里面的集合框架那一章
木瓜1125
都可以,循环这么少效率都是一样的,看个人习惯与喜好吧
qq_科麦艾罗_03928408
因为前面已经定义过 这个param是
Map<String, Object>
的类了
qq_科麦艾罗_03928408
要注意sql的語法,如果'小美'沒有加'',換成sql語法時就錯囉~
select * from imooc_goddess where 1=1 and user_name = '小美'
qq_科麦艾罗_03928408
实际等效于select * from t1 where true
qq_科麦艾罗_03928408
String 类型 线程安全 不可变(通常是值字面量类型)
StringBuffered 线程安全 可变类型 (通常是址类型)
StringBuilder 非线程安全,可变类型 效率高。
区别:对单线程环境,线程安全与非线程安全区执行结果一致,多线程一般采用线程安全。所谓的可变与不可变,是指,对原对象的操作是否会产生新的副本。
初级阶段
应该是项目的字符集不对,SQL 语句拼接时遇到了汉字的乱码。可将项目字符集修改为UTF-8试下。
初级阶段
注意空格
xfinder
既有and又有or的话建议用小括号括起来 自己确定好优先级
zxlolr123_
加在前边表示最后一位是相应的字符,加在后边表示第一位是相应的字符,前后都加表示中间是相应的字符,举个例子,如果是%a,最后一位是a的字符串就会被查找出来,a%,第一位是a的字符串就会被查找出,%a%,中间有a的字符串就会找出来。
zxlolr123_
已解决。为了不与前面的append(追加字符串)连在一起,导致不能识别。若前面的append的追加字符串最后加了空格 后面的可以选择不加。
慕粉5648860
街边七号
可是可以,但你只能是通过一个name查了吧
16k闪存大脑3954634
是一个LIST 类。在 TestAction中已经定义了。所以 在goddessDao这里你无法理解。
是LIST<Map<String,Object>的一个实现类ArrayList 的名字,起得是Arraylist的作用,具体内容自己找吧。
moummm
错误在哪里?是编译报错 还是运行结果结果报错 还是查询结果为空?
moummm
答案很简单啊,“‘2017-06-18’”,注意加上单引号就好了
丑蛋
随便一个参数
慕粉0302633
你是不是只打印了sql语句?
690017359
你看的这个是通过名字进行查询,你想通过ID进行查询只需将sb.append("where user_name = ?")改成sb.append("where id=?")就行了。
qq_与赠_03193390
在模型类里面user_name设定的就是string类型的