Lioy Posted April 22, 2014 Posted April 22, 2014 (edited) Hello , one guy requested me in PM a top pvp/pk mod for aCis ( dont know if already exist , also didn't search.. ) and I did one simple but different. What's the different? It only connects to database only once (while others connect every time a players wanna see the status ) , on server's beggining , and this just to retrieve data into maps , so as Tryskell told me , it's more efficient and more secured to avoid to call database , so it's better (?). So you know...you can use this one if you want :) Main reason was to practice my skills on maps,etc. coded in acis, tested. I didn't give sense to html ofc , you can edit it however you want. It's done by a command now ( /top ) , but you can change it into everything you want(npc , etc ). Code : http://codecrap.com/content/1232/ commandname-e.dat 115 114 top Edited April 22, 2014 by Lioy
SweeTs Posted April 22, 2014 Posted April 22, 2014 On server startup is kinda bad. What if I rr my server only one time per week, huh? :dat: Just add a threadpool to refresh each x hours :P
Lioy Posted April 22, 2014 Author Posted April 22, 2014 (edited) On server startup is kinda bad. What if I rr my server only one time per week, huh? :dat: Just add a threadpool to refresh each x hours :P You didn't understand , it refreshes in every pvp/pk kill automatically, it's real time ,there is not such a problem :) Edited April 22, 2014 by Lioy
xdem Posted April 22, 2014 Posted April 22, 2014 lol dude, SQL has ORDER command just use "SELECT name, pvpkills FROM characters ORDER BY pvpkills DESC 0,10;"
Lioy Posted April 22, 2014 Author Posted April 22, 2014 (edited) lol dude, SQL has ORDER command just use "SELECT name, pvpkills FROM characters ORDER BY pvpkills DESC 0,10;" you lol dude, you didn't understand the point. the point was to avoid sql connections -.- Edited April 22, 2014 by Lioy
xdem Posted April 22, 2014 Posted April 22, 2014 (edited) you lol dude, you didn't understand the point. the point was to avoid sql connections -.- so its better to use some crap code like this shit + protected static <K, V extends Comparable<? super V>> Map<K, V> sortByValue(Map<K, V> map) + { + List<Map.Entry<K, V>> list = new LinkedList<>(map.entrySet()); + Collections.sort(list, new Comparator<Map.Entry<K, V>>() { + @Override + public int compare(Map.Entry<K, V> o1, Map.Entry<K, V> o2) { + return (o1.getValue()).compareTo(o2.getValue()); + } + }); + + Map<K, V> result = new LinkedHashMap<>(); + for (Map.Entry<K, V> entry : list) { + result.put(entry.getKey(), entry.getValue()); + } + return result; + } instead of adding ORDER BY on your SQLCommand? i dont think so. Edited April 22, 2014 by xdem
Lioy Posted April 22, 2014 Author Posted April 22, 2014 so its better to use some crap code like this shit + protected static <K, V extends Comparable<? super V>> Map<K, V> sortByValue(Map<K, V> map) + { + List<Map.Entry<K, V>> list = new LinkedList<>(map.entrySet()); + Collections.sort(list, new Comparator<Map.Entry<K, V>>() { + @Override + public int compare(Map.Entry<K, V> o1, Map.Entry<K, V> o2) { + return (o1.getValue()).compareTo(o2.getValue()); + } + }); + + Map<K, V> result = new LinkedHashMap<>(); + for (Map.Entry<K, V> entry : list) { + result.put(entry.getKey(), entry.getValue()); + } + return result; + } maybe yes or maybe no, that's what I am asking as you read in my main topic, if it's better and I am waiting for friendly answers to this. Anyway i didn't judge you to use it , mainly for practice.
xdem Posted April 22, 2014 Posted April 22, 2014 maybe yes or maybe no, that's what I am asking as you read in my main topic, if it's better and I am waiting for friendly answers to this. Anyway i didn't judge you to use it , mainly for practice. Your code doesnt refresh itself, make it to refresh itself with threadpoolmanager. Order pvpkills with SQL and not with java If you insist ordering with java do it with the classic ordering algorithm and not with that crapcode
Lioy Posted April 22, 2014 Author Posted April 22, 2014 (edited) Your code doesnt refresh itself, make it to refresh itself with threadpoolmanager. Order pvpkills with SQL and not with java If you insist ordering with java do it with the classic ordering algorithm and not with that crapcode Top.addDataPvp(getName(),getPvpKills()); of course it refresh itself lol i tested it. Edited April 22, 2014 by Lioy
xdem Posted April 22, 2014 Posted April 22, 2014 if it does refresh itself dude then it makes db connections since I see no task here >.>
Lioy Posted April 22, 2014 Author Posted April 22, 2014 (edited) if it does refresh itself dude then it makes db connections since I see no task here >.> read the code and think better how it works , it doesn't make any db connection , only one. Edited April 22, 2014 by Lioy
xdem Posted April 22, 2014 Posted April 22, 2014 read the code and think better how it works , it doesn't make any db connection , only one. don't insist mate, I 've spent my life on these stuff
Lioy Posted April 22, 2014 Author Posted April 22, 2014 don't insist mate, I 've spent my life on these stuff I insist, read better the code.
xdem Posted April 22, 2014 Posted April 22, 2014 I insist, read better the code. It does refresh itself and makes DB connections OR it doenst refresh itself and makes the connection once choose dude
Lioy Posted April 22, 2014 Author Posted April 22, 2014 It does refresh itself and makes DB connections OR it doenst refresh itself and makes the connection once choose dude it doesn't sort the database pvp kills it just sorts a map's values. It's simple.
Recommended Posts