CREATE OR REPLACE TYPE unit_menu_obj AS OBJECT(
unitId VARCHAR2(32),
menuId VARCHAR2(32)
);
CREATE OR REPLACE TYPE unit_menu_table AS table OF unit_menu_obj;
3.存储过程:
create or replace procedure save_unit_power(list0 in unit_menu_table,result0 out int) as
sql_bind varchar(200);
begin
FOR i IN 1 .. list0.count LOOP
sql_bind := 'insert into ZD_UNIT_MENU(UNIT_ID,MENU_ID) values('''||list0(i).unitId||''', '''||list0(i).menuId||''' )';
execute immediate sql_bind;
end loop;
commit;
--返回结果,执行成功的话返回1
result0 := 1;
--捕捉异常,回滚操作
EXCEPTION
WHEN OTHERS THEN
result0 := -1;--执行失败的话返回-1
ROLLBACK;
end save_unit_power;
4.再看看mybatis的配置吧:
5.看看我是如何调用的?我直接贴我的server代码了,dao层的就没必要了:
List list = new ArrayList();
Map _map = new HashMap();
String[] menuIds = menuTreeIds.split(",");
JSONObject job = new JSONObject();
int result = -1;
for(int i = 0; i < menuIds.length; i++){
UnitMenu um = new UnitMenu();
um.setMenuId(menuIds[i]);
um.setUnitId(unitId);
list.add(um);
}
_map.put("list0", list);
_map.put("result0", "");
unitMenuMapper.addUnitPower(_map);
System.out.println("================================================_map = "+_map.toString());
result = (Integer)_map.get("result0");
System.out.println("================================================result = "+result);
Context Bound,上下文界定,是Scala为隐式参数引入的一种语法糖,使得隐式转换的编码更加简洁。
隐式参数
首先引入一个泛型函数max,用于取a和b的最大值
def max[T](a: T, b: T) = {
if (a > b) a else b
}
因为T是未知类型,只有运行时才会代入真正的类型,因此调用a >
最近用到企业通讯录,虽然以前也开发过,但是用的是jsf,拼成的树形,及其笨重和难维护。后来就想到直接生成json格式字符串,页面上也好展现。
// 首先取出每个部门的联系人
for (int i = 0; i < depList.size(); i++) {
List<Contacts> list = getContactList(depList.get(i
servlet3.0以后支持异步处理请求,具体是使用AsyncContext ,包装httpservletRequest以及httpservletResponse具有异步的功能,
final AsyncContext ac = request.startAsync(request, response);
ac.s
甲说:
A B两个表总数据量都很大,在百万以上。
idx1 idx2字段表示是索引字段
A B 两表上都有
col1字段表示普通字段
select xxx from A
where A.idx1 between mmm and nnn
and exists (select 1 from B where B.idx2 =
@Repository、@Service、@Controller 和 @Component 将类标识为Bean
Spring 自 2.0 版本开始,陆续引入了一些注解用于简化 Spring 的开发。@Repository注解便属于最先引入的一批,它用于将数据访问层 (DAO 层 ) 的类标识为 Spring Bean。具体只需将该注解标注在 DAO类上即可。同时,为了让 Spring 能够扫描类
先看一下下面的错误代码,对写加了synchronized控制,保证了写的安全,但是问题在哪里呢?
public class testTh7 {
private String data;
public String read(){
System.out.println(Thread.currentThread().getName() + "read data "
网上已经有一大堆的设置步骤的了,根据我遇到的问题,整理一下,如下:
首先先去下载一个mongodb最新版,目前最新版应该是2.6
cd /usr/local/bin
wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.6.0.tgz
tar -zxvf mongodb-linux-x86_64-2.6.0.t
1.rust里绑定变量是let,默认绑定了的变量是不可更改的,所以如果想让变量可变就要加上mut。
let x = 1; let mut y = 2;
2.match 相当于erlang中的case,但是case的每一项后都是分号,但是rust的match却是逗号。
3.match 的每一项最后都要加逗号,但是最后一项不加也不会报错,所有结尾加逗号的用法都是类似。
4.每个语句结尾都要加分