js获取url参数值的两种方式
Posted 前端白雪
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js获取url参数值的两种方式相关的知识,希望对你有一定的参考价值。
js获取url参数值的两种方式
js获取url参数值的方法有很多,下面也为大家介绍两种
方法一:正则分析法
function getQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]); return null;
}
调用方法:
alert(GetQueryString("参数名1"));alert(GetQueryString("参数名2"));
alert(GetQueryString("参数名3"));
方法二
<Script language="javascript">
function GetRequest() {
var url = location.search; //获取url中"?"符后的字串
var theRequest = new Object();
if (url.indexOf("?") != -1) {
var str = url.substr(1);
strs = str.split("&");
for(var i = 0; i < strs.length; i ++) {
theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);
}
}
return theRequest;
}
</Script>
调用方法:
<Script language="javascript">
var Request = new Object();
Request = GetRequest();
var 参数1,参数2,参数3,参数N;
参数1 = Request[\'参数1\'];
参数2 = Request[\'参数2\'];
参数3 = Request[\'参数3\'];
参数N = Request[\'参数N\'];
</Script>
function getQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]); return null;
}
调用方法:
alert(GetQueryString("参数名1"));alert(GetQueryString("参数名2"));
alert(GetQueryString("参数名3"));
方法二
<Script language="javascript">
function GetRequest() {
var url = location.search; //获取url中"?"符后的字串
var theRequest = new Object();
if (url.indexOf("?") != -1) {
var str = url.substr(1);
strs = str.split("&");
for(var i = 0; i < strs.length; i ++) {
theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);
}
}
return theRequest;
}
</Script>
调用方法:
<Script language="javascript">
var Request = new Object();
Request = GetRequest();
var 参数1,参数2,参数3,参数N;
参数1 = Request[\'参数1\'];
参数2 = Request[\'参数2\'];
参数3 = Request[\'参数3\'];
参数N = Request[\'参数N\'];
</Script>
四MyBatis获取参数值的两种方式
MyBatis配置相关模板
1.核心配置文件的模板
2.映射文件模板
3.封装SqlSessionUtils工具类
package com.atguigu.mybatis.utils;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.IOException;
import java.io.InputStream;
public class SqlSessionUtils
public static SqlSession getSqlSession()
SqlSession sqlSession = null;
try
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
sqlSession = sqlSessionFactory.openSession(true);
catch (IOException e)
e.printStackTrace();
return sqlSession;
MyBatis获取参数值的两种方式
- MyBatis获取参数值的两种方式:$和#
- $本质是字符串拼接,#的本质是占位符赋值
- $使用字符串拼接的方式拼接sql,若为字符串类型或日期类型的字段进行赋值时,需要手动加单引号。
- #使用占位符赋值的方式拼接sql,若为字符串类型或日期类型的字段进行赋值时,需要自动加单引号。
1.单个字面量类型的参数
- 若mapper接口的方法参数为单个的字面量类型,此时可以使用$和#以任意的名称获取参数值。$需要手动加引号
①在ParameterMapper接口上
②在ParameterMapper.xml上
- 用#username- username可任意替换
2.用’$username’ - username可任意替换
③测试
2.多个字面量类型的参数
- 若mapper接口的方法参数是多个时,此时MyBatis会自动的将这些参数放在一个map集合中以arg0,arg1…为键,以参数为值或者以param1,param2为键,以参数为值
- 此时通过$和#访问map集合的键会获取对应的值
①在ParameterMapper接口中
②在 ParameterMapper.xml配置类
③测试
3.map集合类型的参数
- 若map接口的方法参数为多个,可以手动创建map集合,通过#和$访问map集合的键获取对应的值
①在ParameterMapper接口中
②在 ParameterMapper.xml配置类
③测试
4.实体类类型的参数
- 若mapper接口的方法参数是实体类对象,可以使用$或#通过对象的属性名获取属性值。
①在ParameterMapper接口中
②在 ParameterMapper.xml配置类
③测试
5.使用@Param标识参数
- 可以通过@Param注解标识mapper接口的方法参数,此时参数会放在map集合中
①以@Param注解的value属性值为键,参数值为值
②以param1,param2为键。以参数为值
2.通过#或$访问map集合的键可以获取对应的值
①在ParameterMapper接口中
②在 ParameterMapper.xml配置类
③测试
以上是关于js获取url参数值的两种方式的主要内容,如果未能解决你的问题,请参考以下文章