最近在做springboot学习,相关的项目建立步骤可以看这个链接

https://www.cnblogs.com/junyang/p/8151802.html

这边建立好的项目结构是这样的:


这里就是记录一下自己写的一个小例子来巩固基础的ajax学习。

首先先引入相关的JS,ajax需要引入jqurey,那就引入你的项目中,一般在static下,放哪看个人喜欢:

 
  
 

开始贴代码前先排个坑,之前js死活引用不上,总是提示404,所以需要自己加映射,写在WebConfig里:

@Configuration
@EnableWebMvc
@ComponentScan
public class WebConfig extends WebMvcConfigurerAdapter implements ApplicationContextAware{
	private ApplicationContext applicationContext;

    public WebConfig(){
        super();
    }

    @Override
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
        this.applicationContext = applicationContext;
    } 
	@Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/static/**").addResourceLocations(ResourceUtils.CLAsspATH_URL_PREFIX+"/static/");
        registry.addResourceHandler("/templates/**").addResourceLocations(ResourceUtils.CLAsspATH_URL_PREFIX+"/templates/");
        super.addResourceHandlers(registry);  
    }

}

好了,接下来就是写html和controller了。

我这里叫testFile.html,在body里加上:

<div style = "margin-left: 50px; margin-right: 50px;  margin-top:50px ;">
<input id = "text1" type = "text"/>
<input id = "button1" type="button" value="点击判断用户名是否可用" onClick = "testGetUserShow()"></input>
<font style = "margin-left:10px; color:#F66; " >*用户名不能使用含有数字1或2或3</font>
<br></br><br></br>
<span id="ts"></span>
</div>
 
  
 
<script th:src="@{/static/js/bootstrap4/js/jquery-1.12.4.js}"></script>
 <script type="text/javascript">
/*<![CDATA[ */
function testGetUserShow(){
	var inputValue = document.getElementById("text1").value;
	var ffmap = {};
	ffmap.inputValue = inputValue;
	 $.ajax({
		type:"post",url:"/test/testUser",data:inputValue,dataType:"TEXT",success:function(data){
			if(data.trim() == "OK")  {
				//trim()方法会去掉页面中的冗余空格
			    $("#ts").html("该用户名可用");
			}else{
				if(data.trim == "ERROR"){
					alert("出错啦,请稍后重试");
					return;
				}
				$("#ts").html("该用户名不可用因为包含了数字 - "+data);
			}
			/* if(d.ok != undefined){
				alert(d.ok);
				document.getElementById("demo2").innerHTML = d.returnValue; 
			}else{
				alert(d.error);
			} */
		}
	}); 
}
/*]]>*/</script>

Controller:

@Controller
@RequestMapping("/test")
public class testController {
protected final static Logger logger = LoggerFactory.getLogger(testController.class);
@GetMapping("/testFile")
  public String testFile() {
    return "/ceshi/testFile";
  }

@RequestMapping("/testUser")
@ResponseBody
  public String testUser(@RequestBody String m) {
String textContains = "";
try {
if(m.contains("1")) {
textContains += "1 ";
String[] s1 = m.split("1");
textContains += formatContains(s1,"1");
}else if(m.contains("2")) {
textContains += "2 ";
String[] s2 = m.split("2");
textContains += formatContains(s2,"2");
}else if(m.contains("3")) {
textContains += "3 ";
}else {
textContains = "OK";
}
}catch(Exception e) {
e.printstacktrace();
logger.info(e.getMessage());
textContains = "ERROR";
}
return textContains;
  }

private String formatContains(String[] strings,String num) {
// Todo Auto-generated method stub
String containString = "";
if(strings.length == 0) {
return containString;
}else{
switch(num) {
case "1":
boolean isHaveTwo = false;
boolean isHaveThree = false;
for(int i = 0;i<strings.length;i++) {
if(strings[i].contains("2") && !isHaveTwo) {
containString += "2 ";
isHaveTwo = true;
}
if(strings[i].contains("3") && !isHaveThree) {
containString += "3 ";
isHaveThree = true;
}
if(isHaveTwo && isHaveThree) {
//有2有3,直接完成
break;
}else {
//其他情况继续寻
continue;
}

}
break;
case "2":
for(int i = 0;i<strings.length;i++) {
if(strings[i].contains("3")) {
containString += "3 ";
String[] s3 = strings[i].split("3");
break;
}
}
break;
  default:
  break;
}
}
return containString;
}
}

ajax简单例子需要springboot框架maven项目构建的更多相关文章

  1. html5 拖拽及用 js 实现拖拽功能的示例代码

    这篇文章主要介绍了html5 拖拽及用 js 实现拖拽,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  2. amaze ui 的使用详细教程

    这篇文章主要介绍了amaze ui 的使用详细教程,本文通过多种方法给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  3. HTML5适合的情人节礼物有纪念日期功能

    这篇文章主要介绍了HTML5适合的情人节礼物有纪念日期功能,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  4. 应用程序关闭时的iOS任务

    我正在构建一个应用程序,通过ajax将文件上传到服务器.问题是用户很可能有时不会有互联网连接,并且客户希望在用户重新连接时安排ajax调用.这可能是用户在离线时安排文件上传并关闭应用程序.应用程序关闭时可以进行ajax调用吗?

  5. swift皮筋弹动发射飞机ios源码

    这是一个款采用swift实现的皮筋弹动发射飞机游戏源码,游戏源码比较详细,大家可以研究学习一下吧。

  6. Swift与Js通过WebView交互

    开发环境:Swfit2.3XCode8.2基础概念jscontext,jscontext是代表JS的执行环境,通过-evaluateScript:方法就可以执行一JS代码JSValue,JSValue封装了JS与ObjC中的对应的类型,以及调用JS的API等JSExport,JSExport是一个协议,遵守此协议,就可以定义我们自己的协议,在协议中声明的API都会在JS中暴露出来,才能调用Swif

  7. JSCore swift

    如果双方相互引用,会造成循环引用,而导致内存泄露。以上是Jscore的基本使用,比较简单

  8. Swift WKWebView的js调用swift

    最近项目需求,需要用到JavaScriptCore和WebKit,但是网上的资源有限,而且比较杂,都是一个博客复制另外一个博客,都没有去实际敲代码验证,下面给大家分享一下我的学习过程。

  9. Swift WKWebView的swift调用js

    不多说,直接上代码:在html里面要添加的的代码,显示swift传过去的参数:这样就实现了swift给js传参数和调用!

  10. 在 Swift 專案中使用 Javascript:編寫一個將 Markdown 轉為 HTML 的編輯器

    你有強烈的好奇心,希望在你的iOS專案中使用JavaScript。jscontext中的所有值都是JSValue對象,JSValue類用於表示任意類型的JavaScript值。因此,我們既需要寫Swift代碼也要寫JavaScript代碼。此外,我們還會在JavaScript中按照這個類的定義來創建一個對象并對其屬性進行賦值。從Swift中呼叫JavaScript就如介紹中所言,JavaScriptCore中最主要的角色就是jscontext類。一個jscontext對象是位於JavaScript環境和本

随机推荐

  1. ajax简单例子需要springboot框架maven项目构建

    首先先引入相关的JS,ajax需要引入jqurey,那就引入你的项目中,一般在static下,放哪看个人喜欢:开始贴代码前先排个坑,之前js死活引用不上,总是提示404,所以需要自己加映射,写在WebConfig里:好了,接下来就是写html和controller了。我这里叫testFile.html,在body里加上:Controller:

  2. java – Springboot @retryable没有重试

    以下代码未重试.我错过了什么?我已将以下内容添加到pom.xml中.我也试过为@Retryable提供不同的参数组合.谢谢.解决方法对于要发现的方法的@Retryable注释,需要从初始化的上下文中正确调用它.方法是从spring上下文中调用bean还是通过其他方式调用?

  3. java – SpringBoot 1.5.x安全性OAuth2

    我有一个带有OAuth2安全性的SpringBootRESTAPI.今天我将spring-boot-starter-parent的版本从1.4.2升级到1.5.2.变化让我很困惑.之前,我可以使用Postman测试我的RESTAPI.当我的访问令牌不正确或我没有特定资源的权限时,服务器响应如下:现在它一直将我重定向到/登录页面…当我登录时–它显示我的资源而没有任何OAuth2身份验证…>这个登录页面的目的是什么以及它正在使用什么身份验证(我检查了GoogleChrome中的请求和响应,我看不到任何访问令牌

  4. java – SpringBoot @WebMvcTest,自动装配RestTemplateBuilder

    我在测试SpringController时遇到了问题.我在我的测试类中使用注释@WebMvcTest.当我运行测试时,我收到此错误:没有’org.springframework.boot.web.client.RestTemplateBuilder’类型的限定bean我在我的项目中使用RestTemplate用于其他类,所以我在我的主类中定义了一个bean:为了使它工作,我必须以这种方式定义我的r

返回
顶部