代码提交分页
This commit is contained in:
@@ -42,8 +42,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter{
|
|||||||
"/css/**",
|
"/css/**",
|
||||||
"/js/**",
|
"/js/**",
|
||||||
"/images/**",
|
"/images/**",
|
||||||
"/static/**",
|
"/static/**"
|
||||||
"/index/**"
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
@@ -69,7 +68,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter{
|
|||||||
.loginProcessingUrl("/login") //登录POST请求路径
|
.loginProcessingUrl("/login") //登录POST请求路径
|
||||||
.usernameParameter("username") //登录用户名参数
|
.usernameParameter("username") //登录用户名参数
|
||||||
.passwordParameter("password") //登录密码参数
|
.passwordParameter("password") //登录密码参数
|
||||||
.defaultSuccessUrl("/main") //默认登录成功页面
|
.defaultSuccessUrl("/index") //默认登录成功页面
|
||||||
.and()
|
.and()
|
||||||
.exceptionHandling()
|
.exceptionHandling()
|
||||||
.accessDeniedHandler(customAccessDeniedHandler) //无权限处理器
|
.accessDeniedHandler(customAccessDeniedHandler) //无权限处理器
|
||||||
|
|||||||
@@ -5,7 +5,9 @@ import java.util.Map;
|
|||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
|
||||||
|
import com.yaoyuan.jiscuss.entity.Posts;
|
||||||
import com.yaoyuan.jiscuss.entity.UserInfo;
|
import com.yaoyuan.jiscuss.entity.UserInfo;
|
||||||
|
import com.yaoyuan.jiscuss.service.IPostsService;
|
||||||
import org.json.JSONObject;
|
import org.json.JSONObject;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
@@ -40,7 +42,8 @@ public class UserPostController extends BaseController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private ITagsService tagsService;
|
private ITagsService tagsService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private IPostsService postsService;
|
||||||
|
|
||||||
//首页查看主题列表(各种条件筛选,最热最新标签等)
|
//首页查看主题列表(各种条件筛选,最热最新标签等)
|
||||||
|
|
||||||
@@ -92,6 +95,28 @@ public class UserPostController extends BaseController {
|
|||||||
//删除主题
|
//删除主题
|
||||||
|
|
||||||
//新建评论
|
//新建评论
|
||||||
|
@PostMapping(value = "/newpost")
|
||||||
|
@ResponseBody
|
||||||
|
public String newPosts(@RequestBody Posts posts) {
|
||||||
|
logger.info(">>> newpost"+posts);
|
||||||
|
|
||||||
|
ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes)RequestContextHolder.getRequestAttributes();
|
||||||
|
HttpServletRequest request = servletRequestAttributes.getRequest();
|
||||||
|
|
||||||
|
UserInfo user = getUserInfo(request);
|
||||||
|
if(user != null){
|
||||||
|
posts.setCreate_id( user.getId());
|
||||||
|
}
|
||||||
|
posts.setCreate_time(new Date());
|
||||||
|
|
||||||
|
Posts savePost = postsService.insert(posts);
|
||||||
|
JSONObject resultobj = new JSONObject();
|
||||||
|
|
||||||
|
logger.info(">>>{}",savePost );
|
||||||
|
resultobj.put("msg", "添加成功");
|
||||||
|
resultobj.put("flag", true);
|
||||||
|
return resultobj.toString(); //
|
||||||
|
}
|
||||||
|
|
||||||
//删除评论
|
//删除评论
|
||||||
|
|
||||||
|
|||||||
@@ -39,17 +39,23 @@ public class UserSystemController extends BaseController {
|
|||||||
private ITagsService tagsService;
|
private ITagsService tagsService;
|
||||||
|
|
||||||
//首页
|
//首页
|
||||||
@RequestMapping("/")
|
@RequestMapping({"/","/main","/index"})
|
||||||
public String home(HttpServletRequest request, ModelMap map) {
|
public String home(@RequestParam(defaultValue = "all") String tag, @RequestParam(defaultValue = "all") String type,@RequestParam(defaultValue = "1") Integer
|
||||||
|
pageNum, HttpServletRequest request, ModelMap map) {
|
||||||
logger.info(">>> index");
|
logger.info(">>> index");
|
||||||
|
logger.info(">>> tag:" + tag);
|
||||||
|
logger.info(">>> pageNum:" + pageNum);
|
||||||
List<Users> userall = usersService.getAllList();
|
List<Users> userall = usersService.getAllList();
|
||||||
logger.info(">>> 第一遍的全部用户:"+userall);
|
logger.info(">>> 第一遍的全部用户:"+userall);
|
||||||
|
|
||||||
List<Users> useral2 = usersService.getAllList();
|
List<Users> useral2 = usersService.getAllList();
|
||||||
logger.info(">>> 第二遍的全部用户:"+useral2);
|
logger.info(">>> 第二遍的全部用户:"+useral2);
|
||||||
|
|
||||||
|
int pageSiz = 5;
|
||||||
|
int pageNumNew = pageNum - 1;
|
||||||
|
|
||||||
//分页获取主题帖子
|
//分页获取主题帖子
|
||||||
Page<Discussions> allDiscussionsPage = discussionsService.queryAllDiscussionsList(0,20);
|
Page<Discussions> allDiscussionsPage = discussionsService.queryAllDiscussionsList(pageNumNew,pageSiz);
|
||||||
|
|
||||||
List<Discussions> allDiscussions =allDiscussionsPage.getContent();
|
List<Discussions> allDiscussions =allDiscussionsPage.getContent();
|
||||||
|
|
||||||
@@ -67,6 +73,10 @@ public class UserSystemController extends BaseController {
|
|||||||
map.put("allDiscussions", allDiscussions);
|
map.put("allDiscussions", allDiscussions);
|
||||||
map.put("pageDiscussions", pageNumList);
|
map.put("pageDiscussions", pageNumList);
|
||||||
map.put("allTags", allTags);
|
map.put("allTags", allTags);
|
||||||
|
|
||||||
|
map.put("tag", tag);
|
||||||
|
map.put("pageNum", pageNum);
|
||||||
|
map.put("pageNumAll", pageNumList.size());
|
||||||
UserInfo user = getUserInfo(request);
|
UserInfo user = getUserInfo(request);
|
||||||
if(user != null){
|
if(user != null){
|
||||||
map.put("username", user.getUsername());
|
map.put("username", user.getUsername());
|
||||||
@@ -76,52 +86,43 @@ public class UserSystemController extends BaseController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//首页main
|
// //首页main
|
||||||
@RequestMapping("/main")
|
// @RequestMapping("/main")
|
||||||
public String homePage(HttpServletRequest request, ModelMap map) {
|
// public String homePage(HttpServletRequest request, ModelMap map) {
|
||||||
logger.info(">>> index");
|
// logger.info(">>> index");
|
||||||
|
//
|
||||||
//分页获取主题帖子
|
// //分页获取主题帖子
|
||||||
Page<Discussions> allDiscussionsPage = discussionsService.queryAllDiscussionsList(0,20);
|
// Page<Discussions> allDiscussionsPage = discussionsService.queryAllDiscussionsList(0,20);
|
||||||
|
//
|
||||||
List<Discussions> allDiscussions =allDiscussionsPage.getContent();
|
// List<Discussions> allDiscussions =allDiscussionsPage.getContent();
|
||||||
|
//
|
||||||
logger.info("全部主题==>:{}",allDiscussions);
|
// logger.info("全部主题==>:{}",allDiscussions);
|
||||||
|
//
|
||||||
//获取主题帖子的分页数据
|
// //获取主题帖子的分页数据
|
||||||
List<String> pageNumList = getPageNumList(allDiscussionsPage.getTotalPages());
|
// List<String> pageNumList = getPageNumList(allDiscussionsPage.getTotalPages());
|
||||||
|
//
|
||||||
//获取所有标签(以后尝试去缓存中取)
|
// //获取所有标签(以后尝试去缓存中取)
|
||||||
List<Tags> allTags = tagsService.getAllList();
|
// List<Tags> allTags = tagsService.getAllList();
|
||||||
logger.info("全部标签==>:{}",allTags);
|
// logger.info("全部标签==>:{}",allTags);
|
||||||
|
//
|
||||||
map.put("data", "Jiscuss 用户");
|
// map.put("data", "Jiscuss 用户");
|
||||||
map.put("allDiscussions", allDiscussions);
|
// map.put("allDiscussions", allDiscussions);
|
||||||
map.put("pageDiscussions", pageNumList);
|
// map.put("pageDiscussions", pageNumList);
|
||||||
map.put("allTags", allTags);
|
// map.put("allTags", allTags);
|
||||||
UserInfo user = getUserInfo(request);
|
// UserInfo user = getUserInfo(request);
|
||||||
if(user != null){
|
// if(user != null){
|
||||||
map.put("username", user.getUsername());
|
// map.put("username", user.getUsername());
|
||||||
map.put("data", "Jiscuss 用户:" + user.getUsername());
|
// map.put("data", "Jiscuss 用户:" + user.getUsername());
|
||||||
}
|
// }
|
||||||
return "index";
|
// return "index";
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
private List<String> getPageNumList(int size) {
|
private List<String> getPageNumList(int size) {
|
||||||
List<String> pageNumList = new ArrayList<String>();
|
List<String> pageNumList = new ArrayList<String>();
|
||||||
if(size>5) {
|
|
||||||
pageNumList.add("1");
|
|
||||||
pageNumList.add("2");
|
|
||||||
pageNumList.add("...");
|
|
||||||
pageNumList.add(""+(size-1));
|
|
||||||
pageNumList.add(""+(size));
|
|
||||||
|
|
||||||
}else {
|
|
||||||
for(int i = 0;i<size;i++) {
|
for(int i = 0;i<size;i++) {
|
||||||
pageNumList.add(""+(i+1));
|
pageNumList.add(""+(i+1));
|
||||||
}
|
}
|
||||||
}
|
|
||||||
return pageNumList;
|
return pageNumList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,13 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import com.yaoyuan.jiscuss.entity.Posts;
|
import com.yaoyuan.jiscuss.entity.Posts;
|
||||||
import com.yaoyuan.jiscuss.repository.PostsRepository;
|
import com.yaoyuan.jiscuss.repository.PostsRepository;
|
||||||
import com.yaoyuan.jiscuss.service.IPostsService;
|
import com.yaoyuan.jiscuss.service.IPostsService;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.transaction.Transactional;
|
||||||
|
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Transactional
|
||||||
public class PostsServiceImpl implements IPostsService {
|
public class PostsServiceImpl implements IPostsService {
|
||||||
@Autowired
|
@Autowired
|
||||||
private PostsRepository postsRepository;
|
private PostsRepository postsRepository;
|
||||||
|
|||||||
@@ -0,0 +1,50 @@
|
|||||||
|
|
||||||
|
let discussionsId = null;
|
||||||
|
|
||||||
|
function setDiscussionsId(id) {
|
||||||
|
console.log('setDiscussionsId:'+id);
|
||||||
|
discussionsId = id; // id
|
||||||
|
}
|
||||||
|
$("#addPost").click(function () {
|
||||||
|
console.log("点击 addPost");
|
||||||
|
console.log(username);
|
||||||
|
console.log(discussionsId);
|
||||||
|
|
||||||
|
if(username && username!=null){
|
||||||
|
var token = $("meta[name='_csrf']").attr("content");
|
||||||
|
var header = $("meta[name='_csrf_header']").attr("content");
|
||||||
|
console.warn(header)
|
||||||
|
console.warn(token)
|
||||||
|
var title = $("#postcontent").val();
|
||||||
|
console.log(title);
|
||||||
|
$.ajax({
|
||||||
|
type: "POST",
|
||||||
|
url: "/newpost",
|
||||||
|
data: JSON.stringify({
|
||||||
|
content: content,
|
||||||
|
discussion_id: discussionsId
|
||||||
|
}),
|
||||||
|
contentType: 'application/json',
|
||||||
|
beforeSend: function(request) {
|
||||||
|
request.setRequestHeader(header, token); // 添加 CSRF Token
|
||||||
|
},
|
||||||
|
dataType: "JSON",
|
||||||
|
success: function (data) {
|
||||||
|
console.log(data);
|
||||||
|
if(data.flag){
|
||||||
|
window.alert(title+',添加成功!');
|
||||||
|
$('.ui.modal.createNewDiccuss').modal('hide');
|
||||||
|
location.reload();
|
||||||
|
}else{
|
||||||
|
window.alert(data.msg);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}else{
|
||||||
|
massage('您未登录,请先登录!','');
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
@@ -1,4 +1,43 @@
|
|||||||
|
|
||||||
|
|
||||||
|
let pageNum = null;
|
||||||
|
let pageAll = null;
|
||||||
|
let pageUrl= '/';
|
||||||
|
|
||||||
|
function setpageNum(data,allList) {
|
||||||
|
var url = window.location.href;
|
||||||
|
console.log('当前url:'+url)
|
||||||
|
if(url.indexOf('index') > 0){
|
||||||
|
pageUrl= '/index';
|
||||||
|
}
|
||||||
|
console.log('当前页码:'+data)
|
||||||
|
pageNum = parseInt(data) // pageNum
|
||||||
|
pageAll = parseInt(allList)
|
||||||
|
}
|
||||||
|
|
||||||
|
$("#upPage").click(function () {
|
||||||
|
console.log("点击 upPage");
|
||||||
|
console.log('当前页码:'+pageNum);
|
||||||
|
if(pageNum > 1){
|
||||||
|
let page = pageNum - 1
|
||||||
|
window.location.href=pageUrl + "?pageNum=" + page;
|
||||||
|
}else{
|
||||||
|
massage('已经是首页!','');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#nextPage").click(function () {
|
||||||
|
console.log("点击 nextPage");
|
||||||
|
console.log('当前页码:'+pageNum);
|
||||||
|
console.log('当前pageAll页码:'+pageAll);
|
||||||
|
if((pageNum + 1) <= pageAll){
|
||||||
|
let page = pageNum + 1
|
||||||
|
window.location.href=pageUrl + "?pageNum=" + page;
|
||||||
|
}else{
|
||||||
|
massage('已经是尾页!','');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
$("#createNewDiccuss").click(function () {
|
$("#createNewDiccuss").click(function () {
|
||||||
console.log("点击 createNewDiccuss");
|
console.log("点击 createNewDiccuss");
|
||||||
console.log(username);
|
console.log(username);
|
||||||
@@ -46,6 +85,7 @@ $("#newdiscussions").click(function(){
|
|||||||
if(data.flag){
|
if(data.flag){
|
||||||
window.alert(title+',添加成功!');
|
window.alert(title+',添加成功!');
|
||||||
$('.ui.modal.createNewDiccuss').modal('hide');
|
$('.ui.modal.createNewDiccuss').modal('hide');
|
||||||
|
location.reload();
|
||||||
}else{
|
}else{
|
||||||
window.alert(data.msg);
|
window.alert(data.msg);
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -151,35 +151,11 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="ui borderless menu">
|
|
||||||
<a class="icon item">
|
|
||||||
<i class="left chevron icon"></i>
|
|
||||||
</a>
|
|
||||||
<a class="item">
|
|
||||||
1
|
|
||||||
</a>
|
|
||||||
<a class="item">
|
|
||||||
2
|
|
||||||
</a>
|
|
||||||
<div class="disabled item">
|
|
||||||
...
|
|
||||||
</div>
|
|
||||||
<a class="item">
|
|
||||||
10
|
|
||||||
</a>
|
|
||||||
<a class="item">
|
|
||||||
11
|
|
||||||
</a>
|
|
||||||
<a class="icon item"> <i class="right chevron icon"></i>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<form class="ui reply form">
|
<form class="ui reply form">
|
||||||
<div class="field">
|
<div class="field">
|
||||||
<textarea></textarea>
|
<textarea id="postcontent"></textarea>
|
||||||
</div>
|
</div>
|
||||||
<div class="ui blue labeled submit icon button">
|
<div class="ui blue labeled submit icon button" id="addPost">
|
||||||
<i class="icon edit"></i> 添加评论
|
<i class="icon edit"></i> 添加评论
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
@@ -301,10 +277,12 @@
|
|||||||
<#if username??>
|
<#if username??>
|
||||||
console.log('已经登陆:' + username);
|
console.log('已经登陆:' + username);
|
||||||
</#if>
|
</#if>
|
||||||
|
setDiscussionsId('${discussions.id}');
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
<script type="text/javascript" charset="UTF-8" src="/static/js/user/discussions.js"></script>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -44,3 +44,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
function massage(msg,type){
|
||||||
|
window.alert(msg);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
@@ -28,7 +28,10 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="item" id="userlogin">
|
<div class="item" id="userlogin">
|
||||||
<#if username??>
|
<#if username??>
|
||||||
${username} <a href="/logout" id="loginOut">注销</a>
|
<form class="ui large form" action="/logout" id="logoutForm" method="post" style="display: none;">
|
||||||
|
<input type="hidden" name="${_csrf.parameterName}" value="${_csrf.token}"/>
|
||||||
|
</form>
|
||||||
|
${username} <a href="javascript:document.getElementById('logoutForm').submit();">注销</a>
|
||||||
<#else>
|
<#else>
|
||||||
<a href="/login" id="loginmodel">登录 & 注册</a>
|
<a href="/login" id="loginmodel">登录 & 注册</a>
|
||||||
</#if>
|
</#if>
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
<div class="ui container" id="container">
|
<div class="ui container" id="container">
|
||||||
<div class="ui info message">
|
<div class="ui info message">
|
||||||
<i class="close icon"></i>
|
<i class="close icon"></i>
|
||||||
<div class="header">欢迎来到这里,${data},主题数: ${allDiscussions?size} ,主题页数:${pageDiscussions?size}
|
<div class="header">欢迎来到这里,${data},当前页主题数: ${allDiscussions?size} ,主题页数:${pageDiscussions?size}
|
||||||
,标签数 ${allTags?size} </div>
|
,标签数 ${allTags?size} </div>
|
||||||
<ul class="list">
|
<ul class="list">
|
||||||
<li>JAVA + DISCUSS = JISCUSS 。</li>
|
<li>JAVA + DISCUSS = JISCUSS 。</li>
|
||||||
@@ -377,15 +377,21 @@
|
|||||||
|
|
||||||
|
|
||||||
<div class="ui borderless menu">
|
<div class="ui borderless menu">
|
||||||
<a class="icon item">
|
<a class="icon item" id="upPage">
|
||||||
<i class="left chevron icon"></i>
|
<i class="left chevron icon"></i>
|
||||||
</a>
|
</a>
|
||||||
<#list pageDiscussions as page>
|
<#list pageDiscussions as page>
|
||||||
<a class="item">
|
<#if page == pageNum >
|
||||||
|
<a class="item" style=" background-color: #7d827d;" href="/?pageNum=${page}">
|
||||||
${page}
|
${page}
|
||||||
</a>
|
</a>
|
||||||
|
<#else>
|
||||||
|
<a class="item" href="/?pageNum=${page}">
|
||||||
|
${page}
|
||||||
|
</a>
|
||||||
|
</#if>
|
||||||
</#list>
|
</#list>
|
||||||
<a class="icon item"> <i class="right chevron icon"></i>
|
<a class="icon item" id="nextPage"> <i class="right chevron icon"></i>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -435,6 +441,10 @@
|
|||||||
setusername('${username}');
|
setusername('${username}');
|
||||||
console.log('已经登陆:' + username);
|
console.log('已经登陆:' + username);
|
||||||
</#if>
|
</#if>
|
||||||
|
console.log('pageNum:' + '${pageNum}');
|
||||||
|
console.log('pageNumAll:' + '${pageNumAll}');
|
||||||
|
|
||||||
|
setpageNum('${pageNum}','${pageNumAll}');
|
||||||
|
|
||||||
var token = $("meta[name='_csrf']").attr("content");
|
var token = $("meta[name='_csrf']").attr("content");
|
||||||
if(token == '' && username && username != null){
|
if(token == '' && username && username != null){
|
||||||
@@ -443,9 +453,6 @@
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
function massage(msg,type){
|
|
||||||
window.alert(msg);
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<script type="text/javascript" charset="UTF-8" src="/static/js/user/system.js"></script>
|
<script type="text/javascript" charset="UTF-8" src="/static/js/user/system.js"></script>
|
||||||
|
|||||||
Reference in New Issue
Block a user