java - Right work whit path at RESTful api with spring mvc, angular and hibernate -


i have designprojects.jsp want runned after logincontroller , want path include current month , year , looks : ..../designprojects/2016/08/ want use path angularjs crud . how make right? should write rest_service_uri in angular_service file? may rest_service_uri = '........./designprojects/{year}/{month}/';? guys.....

my logincontroller :

@controller public class logincontroller {  @autowired private loginservice loginservice;  @requestmapping(value = "/", method = requestmethod.get) public string index() {     return "redirect:/login"; }  @requestmapping(value = {"/login"}, method = requestmethod.get) public modelandview displaylogin(user user) {     modelandview model = new modelandview("/login");     model.addobject("user", user);     return model; }  @requestmapping(value = "/login", method = requestmethod.post) public modelandview executelogin(httpservletrequest request, @modelattribute("user") user user) {     modelandview modelandview = null;     if (user != null && user.getusername() != null & user.getpassword() != null) {         employee employee = loginservice.login(user.getusername(), user.getpassword());         if (employee != null) {             request.getsession().setattribute("employee_id", employee.getid());             request.getsession().setattribute("employee_name", employee.getfirstname());             request.getsession().setattribute("employee_role", (employee.getrole()).getrole());             date date= new date();             calendar cal = calendar.getinstance();             cal.settime(date);             int month = cal.get(calendar.month)+1;             int year = cal.get(calendar.year);             modelandview = new modelandview("redirect:/designprojects/" + year + "/" + month);             return modelandview;         }     }     modelandview = new modelandview("/login");     request.setattribute("errormessage", "invalid username or password");     return modelandview; } 

my designprojectcontroller :

@controller public class designprojectsrestcontroller {  @autowired designprojectservice designprojectservice;  @requestmapping(value = "/designprojects/{year}/{month}", method = requestmethod.get) public responseentity<list<designproject>> listalldesignprojects(@pathvariable(value="year") int year, @pathvariable(value="month") int month) {     list<designproject> listofprojects = designprojectservice.getalldesignprojects(year,month);     return new responseentity<list<designproject>>(listofprojects, httpstatus.ok); }  @requestmapping(value = "/designprojects/{year}/{month}/{id}", method = requestmethod.get) public responseentity<designproject> getdesignproject(@pathvariable("id") int id) {     designproject designproject = designprojectservice.getdesignprojectsbyid(id);     return new responseentity<designproject>(designproject, httpstatus.ok); }  @requestmapping(value = "/designprojects/{year}/{month}", method = requestmethod.post) public responseentity<void> createdesignproject(@requestbody designproject designproject) {     designprojectservice.adddesignproject(designproject);     return new responseentity<void>(httpstatus.created); }  @requestmapping(value = "/designprojects/{year}/{month}", method = requestmethod.put) public responseentity<designproject> updatedesignproject(@requestbody designproject designproject) {     designprojectservice.updatedesignprojects(designproject);     return new responseentity<designproject>(designproject, httpstatus.ok); }  @requestmapping(value = "/designprojects/{year}/{month}/{id}", method = requestmethod.delete) public responseentity<void> deletedesignproject(@pathvariable("id") int id) {     designprojectservice.deletedesignproject(designprojectservice.getdesignprojectsbyid(id));     return new responseentity<void>(httpstatus.no_content); }   } 

first, check index.html base context href "/"

*<head>     <title ng-bind="title">angularjs</title>     <meta charset="utf-8">     <base href="/" /> </head>* 

then create file service connection rest api

(function () {     'use strict';      angular         .module('app.core')         .factory('coursessrevice', coursessrevice);      coursessrevice.$inject = ['$resource'];      /* @nginject */     function coursessrevice($resource) {         console.log('resource invoke');         return $resource('/api/courses/:id', {id: '@id'},             {create: {method: 'post'}, save: {method: 'put'}});     } })(); 

and inject service controller, this

(function () {     'use strict';     angular         .module('app.courses')         .controller('coursesctrl', coursesctrl);      coursesctrl.$inject = ['$scope', '$location', '$filter', 'coursessrevice'];      function coursesctrl($scope, $location, $filter, coursessrevice) {         var vm = this;         vm.courses = [];         vm.unfiltredcourses = [];         vm.addcourse = addcourse;         vm.search = search;         vm.querystring = '';          activate();          function activate() {             listcourses();             vm.unfiltredcourses = angular.copy(vm.courses);         }          function listcourses() {             vm.courses = coursessrevice.query();             vm.courses.$promise.then(function (result) {                 vm.courses = angular.copy(result);                 vm.unfiltredcourses = angular.copy(vm.courses);             });         }          function addcourse() {             console.log('add: ');             $location.path('/courses/new');         }          function search() {             if (!vm.querystring == '') {                 vm.courses = angular.copy(vm.unfiltredcourses);                 vm.courses = $filter('coursesearchfilter')(vm.querystring, vm.courses);             }         }     } })(); 

check example on github


Comments

Popular posts from this blog

mysql - Dreamhost PyCharm Django Python 3 Launching a Site -

java - Sending SMS with SMSLib and Web Services -

python 3.5 - Pyqtgraph string in x tick -