php前端和java后端数据调用流程

php前端和java后端数据调用流程

前端

1、新建php页面title.php

javascript 复制代码
<title>标题</title>
<td width="30%" class="form-key">标题内容</td>
<td width="70%">
	<input type="text" class="form-control" name="title" id="title" style="width:100%">
</td>

<?php include_once 'jstpl/title_tpl.php';?>

<script src="<?php echo $root_path ?>~main/js/title.js?v=<?php echo $v?>" type="text/javascript"></script>

2、新建js代码文件title.js

javascript 复制代码
var dataList=null;

function search(){
	var params=getSearchCondition();

	var ret=execjava("titleBean.searchTitle", params, "json");
	//数据
	dataList=ret.data;

	//模板渲染
	var titleHtml=template.render('title_Tbl',{
		dataList:dataList
	});

	$("#title_Tbl").html(titleHtml);
}

function getSearchCondition(){
	var title=$("#title").val();
	var params={
		"title":title
	};
	return params;
}

3、新建php页面title_tpl.php

javascript 复制代码
<script id="title_Tbl" type="text/html">
	<td><%=dataList[i].title%></td>
</script>

后端

1、新建java文件TitleBean.java

javascript 复制代码
package ...
import java.util.*;

@Controller
public class TitleBean{
	private static final Logger logger=LoggerFactory.getLogger(TitleBean.class);

	@Autowired
	private TitleService titleService;

	public Map<String,Object> searchTitle(){
		Map<String,Object> ret=new HashMap<String,Object>();
		Map<String,Object> params=new HashMap<String,Object>();

		try{
		String title=dform.getString("title");

		params.put("title",title);
		ret= titleService. searchTitle(params);
		}catch(Exception e){
			logger.error("获取标题出错!",e);
			ret.put("state","500");
			ret.put("receipt","获取标题出错");
		}
	return ret;
	}

2、新建java文件TitleService.java

javascript 复制代码
package ...
import java.util.*;

public interface TitleService{

	Map<String,Object> searchTitle(Map<String,Object> params);

}

3、新建java文件TitleServiceImpl.java

javascript 复制代码
package ...
import java.util.*;

public class TitleServiceImpl implements TitleService{
	private static final Logger logger=LoggerFactory.getLogger(TitleServiceImpl.class);

	@Override
	public Map<String,Object> searchTitle(Map<String,Object> params){
		Map<String,Object> ret = new HashMap<String,Object>();

		try{
			List<Map<String,Object>> dataList=dao.selectList("title.selectTitle",params);

		ret.put("data",dataList);
		ret.put("state","200");
		ret.put("receipt","获取标题列表成功");
		}catch (Exception e){
			logger.error("获取标题列表失败",e);
			ret.put("state","500");
			ret.put("receipt","获取标题列表出错");
		}
	return ret;
}

4、sql语句,新建xml文件title.xml

javascript 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "..//mybatis.org//DTD Mapper 3.0//EN" http://mybatis.org/dtd/mybatis-3-mapper.dtd>

<mapper namespace="title">
	<seclect id="selectTitle" resultType="hashmap">
		SELECT id, title FROM test_title order by id desc 
	</select>
</mapper>

数据库

新建数据库,名称为Test,新建基本表,名称为test_title

表中新建字段title,varchar(100)

相关推荐
wuhen_n26 分钟前
案例分析:从“慢”到“快”,一个后台管理页面的优化全记录
前端·javascript·vue.js
人道领域1 小时前
Day | 11 【苍穹外卖统计业务的实现:含详细思路分析】
java·数据库·后端·苍穹外卖
xiaoye37086 小时前
Java 自动装箱 / 拆箱 原理详解
java·开发语言
YDS8298 小时前
黑马点评 —— 分布式锁详解加源码剖析
java·spring boot·redis·分布式
KD8 小时前
阿里云服务迁移实战(二)——网关迁移与前后端分离配置
后端
迷藏4948 小时前
**发散创新:基于 Rust的开源权限管理系统设计与实战**在现代软件架构中,**权限控制**早已不
java·开发语言·rust·开源
升鲜宝供应链及收银系统源代码服务8 小时前
《IntelliJ + Claude Code + Gemini + ChatGPT 实战配置手册升鲜宝》
java·前端·数据库·chatgpt·供应链系统·生鲜配送
daidaidaiyu9 小时前
Nacos实例一则及其源码环境搭建
java·spring
i建模9 小时前
将Edge浏览器的标签页从顶部水平排列**移至左侧垂直侧边栏
前端·edge
跟着珅聪学java9 小时前
js编写中文转unicode 教程
前端·javascript·数据库