工作中一些用到的小知识点

记录工作中遇到的一些小的知识点

暂时分为,前端,后端,数据库三个部分

前端

  1. SpringMVC后端在ModelAndView中设值后,在前端取出的方式
    JS: var objectName1 = ‘${name1}’; var objectName2 = ‘${name2}’;
    JSP中通过EL表达: 对象1是 :${name1 }
    JSP中通过内置对象对象1是 :<% String name = request.getAttribute(“name”); %>

2.KandoUI 里面获取grid的已选择项数据
var selectData = $(’#grid’).data(‘kendoGrid’).selectedDataItems();
该方法获取的对象为一个对象数组,包含了再gird里面选择的全部信息

3.KandoUI 设置grid单选行和多选行,通过设置selectable属性的值进行更改
单选: selectable:‘rowbox’, 多选: selectable:

4.KandoUI 在页面中打开新的窗口, kendoWindo组件

$("#masterCopy").kendoWindow({
                    height: "30%",
                    width: "70%",
                    title: '请选择要复制的申请单',
                    content: "${base.contextPath}/xxxURL",
                    // draggable: true,
                    scrollable: false,
                    resizable: false,
                    iframe: true,
                    visible: false,
                    modal: true
                }).data("kendoWindow").center().open();
//或者
$("#masterCopy").kendoWindow({
                    name:"copyWindow",
                    actions: ["Close"],
                    title: '请选择要复制的申请单',
                    draggable: true,
                    height: "25%",
                    width: "70%",
                    close: onCopyClose(),
                    resizable: true,
                    content: "${base.contextPath}/xxxURL",
                    iframe: true,
                    modal: true
 });
var win = $("#masterCopy").data("kendoWindow");
win.toggleMaximization();	//最大化
win.maximize();	//最大化
win.center().open();

在子页面进行关闭则是:
window.parent.$("#masterCopy").data("kendoWindow").close();

5.匹配中文的正则表达式 [\u4e00-\u9fa5]
匹配一段连续的中文 [\u4e00-\u9fa5]{1,}

6.使用ajax方法实现form表单的提交(提交不跳转页面)
https://www.cnblogs.com/han-1034683568/p/7199168.html
7.最原始的Jquery Ajax请求格式:

$.ajax({  
         type : "post",  
          url : "register/RegisterState",  
          data : "test=" + test,  
          async : false,  
          success : function(data){  
            data = eval("(" + data + ")");  
            aDataSet = data;  
          }  
     }); 

后端

  1. SpringMVC后端在ModelAndView中设值的方式:
    ModelAndView mav = new ModelAndView();
    mav.addObject(“name1”,object1);
    mav.addObject(“name2”,object2);

  2. spring-boot中@Configuration的使用 和作用
    从Spring3.0,@Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个或多个被@Bean注解的方法,这些方法将会被AnnotationConfigApplicationContext或AnnotationConfigWebApplicationContext类进行扫描,并用于构建bean定义,初始化Spring容器。即配置了@Configuration注解之后,需要在其它类中配置后面的注解才会被扫描到,才会生效。
    @Configuration标注在类上,相当于把该类作为spring的xml配置文件中的<beans>
    @Configuation等价于<Beans></Beans> 其中的@Bean等价于<Bean></Bean>
    @Value(“${xxxx}”)注解从配置文件读取值,然后赋值到该字段

  3. java中读取classes路径下的文件(打包jar后,或者target目录下的文件)未打包前,文件位于spring项目中的resources目录下。

       String classLoader_fileStr = this.getClass().getClassLoader().getResource("demo.xlsx").getPath();
       InputStream is = this.getClass().getClassLoader().getResourceAsStream("demo.xlsx");
    
  4. java通过读写流获取HttpServletRequest中的请求体内容

    @RequestMapping("/test")
    @ResponseBody
    public String get(HttpServletRequest request) throws Exception{
        // BufferedReader reader = new BufferedReader(new InputStreamReader(trequest.getInputStream()));
        BufferedReader br = request.getReader();
        String perLine, resouresStr = "";
        while((perLine = br.readLine()) != null){
            resouresStr += perLine;
        }
        //Object object = JSONObject.parseObject(resouresStr,Object.class);
        return resouresStr;
    }
    

数据库

  1. 通过压缩包的方式安装MySQL数据库 , windows需要以管理员模式进行cmd
    1)下载mysql的压缩包,并解压
    2)进入解压的MySQL的bin文件路径
    3)执行数据库初始化命令 mysqld --initialize(生成的root账户无密码) mysqld --initialize --console(生成的root账户有随机密码)
    4)(重新进入cmd),执行 mysqld --install [服务名]安装mysql服务,如果提示服务已存在,执行 mysqld --remove [服务名]
    1. net start mysql启动mysql服务,
      6)登录数据库 执行指令,修改密码。 alter user'root'@'%' IDENTIFIED BY 'MyNewPass';或者执行alter user 'root'@'localhost'IDENTIFIED BY 'MyNewPass@123';
      7)修改mysql密码加密方式 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
  2. mysql实现类似于Oracle的:ROWNUM伪列功能
    SELECT
    	@rownum := @rownum + 1 AS rownum, 
    	T.*
    FROM
    	( SELECT @rownum := 0 ) r,
    	( SELECT table.* FROM table) T 
    HAVING
    	rownum =1
    
    注::=表示赋值,类似的=只有在在set和update时才是赋值(与:=等同),其它时候表示条件判断(返回0或者1)。( SELECT @rownum := 0 ) r,类似于生成一个@rownum临时变量,通过赋值语句实现自增。(@是在编写存储过程或者触发器程序自定义变量,使用时也要带@符号)

常用工具

  1. 使用git clone 单个文件夹(文件),而不下载整个项目
    1)通过DownGit 进行下载 https://www.itsvse.com/downgit/ (只能下载远程文件的zip压缩包)
    2)使用Git1.7.0以后新加入的Sparse Checkout模式
    eg:假设想要下载demoProject下的demo文件夹,文件夹链接为 https://github.com/myGithub/demoProject/demo,整个项目Https的GIT地址为https://github.com/myGithub/demoProject.git
    进入本地想要保存目标文件的文件夹中,打开git控制面板,输入以下指令
    git init     //初始化仓库
    git config core.sparsecheckout true //设置允许克隆子目录
    echo 'demo*' >> .git/info/sparse-checkout //设置要克隆的子目录路径 ,注意空格别漏
    git remote add origin https://github.com/myGithub/demoProject.git  //这里换成你的目标地址
    git pull origin master    //下载
    
  2. 修改Git用户签名(使用–global为全局配置)
$ git config --global user.name "ky"
$ git config --global user.email ky@xxx.com  //可选配置
  1. window 关闭8080端口占用的程序
netstat -ano | findstr 8080
//显示:TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 7385
tastkill /f /pid 7385
  1. docker进入容器内部
    //container_name为目标容器名称 /bin/bash为固定写法
    docker exec -it container_name /bin/bas

  2. docker 容器内部与宿主机之间文件 拷贝
    //从主机复制到容器
    docker cp host_path containerID:container_path
    //从容器复制到宿主机
    docker cp containerID:container_path host_path

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值